{"id":20442886,"url":"https://github.com/mrbrunelli/shell-node","last_synced_at":"2026-04-10T13:31:53.059Z","repository":{"id":122802856,"uuid":"363213806","full_name":"mrbrunelli/shell-node","owner":"mrbrunelli","description":"Script automatizado para gerar containers com Node + Express","archived":false,"fork":false,"pushed_at":"2021-04-30T18:41:32.000Z","size":41,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-09-13T00:52:16.040Z","etag":null,"topics":["docker","docker-compose","express","express-generator","node","shell-script"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mrbrunelli.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-04-30T17:32:17.000Z","updated_at":"2021-04-30T18:41:34.000Z","dependencies_parsed_at":null,"dependency_job_id":"ad2cce3b-7dfe-4905-964a-bbc9151b088b","html_url":"https://github.com/mrbrunelli/shell-node","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mrbrunelli/shell-node","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrbrunelli%2Fshell-node","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrbrunelli%2Fshell-node/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrbrunelli%2Fshell-node/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrbrunelli%2Fshell-node/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mrbrunelli","download_url":"https://codeload.github.com/mrbrunelli/shell-node/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrbrunelli%2Fshell-node/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31645275,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-10T07:40:12.752Z","status":"ssl_error","status_checked_at":"2026-04-10T07:40:11.664Z","response_time":98,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","docker-compose","express","express-generator","node","shell-script"],"created_at":"2024-11-15T09:43:21.409Z","updated_at":"2026-04-10T13:31:53.028Z","avatar_url":"https://github.com/mrbrunelli.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"## :whale: Docker Image Node + Express\n\u003e Script automatizado para criar containers Node + Express\n### Como executar\n#### Por Shell Script\n1. Fazer build da imagem\n```sh\ndocker build -t imagemnode .\n```\n\n2. Tornar Scripts executáveis\n```sh\nchmod +x start.sh\nchmod +x up.sh\nchmod +x down.sh\n```\n\n3. Subir container\n```sh\n./up.sh\n```\n\n4. Excluir containers\n```sh\n./down.sh\n```\n\n#### Docker Compose\n1. Executar docker compose\n```sh\ndocker-compose up -d\n```\n\n2. Exluir containers\n```sh\ndocker-compose down\n```\n\n### Screenshot\n![](.github/express.png)\n\n### Por que utilizar Docker?\n\n#### 1. Ambientes Semelhantes\nUma vez que sua aplicação seja transformada em uma ima-\ngem Docker, ela pode ser instanciada como container em\nqualquer ambiente que desejar. Isso significa que poderá uti-\nlizar sua aplicação no notebook do desenvolvedor da mesma\nforma que seria executada no servidor de produção.\n\n#### 2. Aplicação como pacote completo\nUtilizando as imagens Docker é possível empacotar toda\nsua aplicação e dependências, facilitando a distribuição, pois\nnão será mais necessário enviar uma extensa documentação\nexplicando como configurar a infraestrutura necessária para\npermitir a execução, basta disponibilizar a imagem em repo-\nsitório e liberar o acesso para o usuário e, ele mesmo pode\nbaixar o pacote, que será executado sem problemas.\n\n#### 3. Padronização e replicação\nComo as imagens Docker são construídas através de arquivos\nde definição16, é possível garantir que determinado padrão\nseja seguido, aumentando a confiança na replicação. Basta\nque as imagens sigam as melhores práticas17 de construção\npara que seja viável escalarmos18 a estrutura rapidamente.\n\n#### 4. Idioma comum entre Infraestrutura e desenvolvimento\nA sintaxe usada para parametrizar as imagens e ambientes\nDocker pode ser considerada um idioma comum entre áreas\nque costumeiramente não dialogavam bem. Toda a infraestrutura estará presente no código, e basta um pull request para mudá-la.\n\n#### 5. Comunidade\nAssim como é possível acessar o github19 ou gitlab20 à procura\nde exemplos de código, usando o repositório de imagens do\nDocker21 é possível conseguir bons modelos de infraestrutura\nde aplicações ou serviços prontos para integrações complexas.\n\n### Legal, mas o que é Docker?\nÉ uma ferramenta para provisionar aplicações o mais rápido possível.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrbrunelli%2Fshell-node","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmrbrunelli%2Fshell-node","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrbrunelli%2Fshell-node/lists"}