{"id":20865363,"url":"https://github.com/nataliagranato/docker101","last_synced_at":"2025-06-13T10:09:45.930Z","repository":{"id":298203683,"uuid":"851311471","full_name":"nataliagranato/docker101","owner":"nataliagranato","description":"Repositório da palestra Além do Docker101, boas práticas na construção de aplicações Cloud Native.","archived":false,"fork":false,"pushed_at":"2025-06-12T08:16:03.000Z","size":27314,"stargazers_count":33,"open_issues_count":2,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-13T10:09:32.614Z","etag":null,"topics":["alpine","chainguard","codecon","distroless","docker"],"latest_commit_sha":null,"homepage":"https://nataliagranato.xyz","language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nataliagranato.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"nataliagranato","ko_fi":"nataliagranato","buy_me_a_coffee":"nataliagranato","custom":null}},"created_at":"2024-09-02T21:14:08.000Z","updated_at":"2025-06-05T01:54:08.000Z","dependencies_parsed_at":"2025-06-13T10:09:35.053Z","dependency_job_id":null,"html_url":"https://github.com/nataliagranato/docker101","commit_stats":null,"previous_names":["nataliagranato/docker101"],"tags_count":1,"template":false,"template_full_name":"nataliagranato/containers-and-kubernetes","purl":"pkg:github/nataliagranato/docker101","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nataliagranato%2Fdocker101","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nataliagranato%2Fdocker101/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nataliagranato%2Fdocker101/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nataliagranato%2Fdocker101/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nataliagranato","download_url":"https://codeload.github.com/nataliagranato/docker101/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nataliagranato%2Fdocker101/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259624743,"owners_count":22886331,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["alpine","chainguard","codecon","distroless","docker"],"created_at":"2024-11-18T05:48:46.855Z","updated_at":"2025-06-13T10:09:45.911Z","avatar_url":"https://github.com/nataliagranato.png","language":"Dockerfile","funding_links":["https://github.com/sponsors/nataliagranato","https://ko-fi.com/nataliagranato","https://buymeacoffee.com/nataliagranato"],"categories":[],"sub_categories":[],"readme":"# A Cadeia de Boas Práticas\n\nPara garantir a segurança e a eficiência em aplicações Cloud Native, devemos considerar os 4C's: Containers, Clusters, Cloud e Código.\n\nImplementação de boas práticas deve ser feita em todas as etapas do desenvolvimento, desde a escrita do código, a implantação em produção e na utilização de clusters de orquestração e containers.\n\n## Containers e DevOps\n\nA relação entre containers e DevOps é fundamental. Containers permitem que as equipes de desenvolvimento e operações trabalhem de forma mais integrada, facilitando a entrega contínua e a automação.\n\n## Cloud Native Trail Map\n\nA Cloud Native Computing Foundation (CNCF) oferece o [Cloud Native Trail Map](https://github.com/Tech-Preta/trailmap), que orienta sobre os componentes essenciais para construir aplicações nativas de nuvem.\n\n## O Docker\n\nDocker revolucionou a forma como desenvolvemos, testamos e implantamos aplicações, estabelecendo um padrão na indústria para a utilização de containers.\n\n## Diferentes Abordagens de Dockerfile\n\n- [Dockerfile Tradicional](./traditional)\n- [Multi Stage Build](./multi-stage)\n- [Com Alpine](./alpine)\n- [Distroless](./distroless)\n\n## Assinando Imagens com Cosign e por que usar\n\nAssinar imagens com [Cosign](https://github.com/sigstore/cosign) garante a integridade e a autenticidade das imagens de container, aumentando a segurança no pipeline de CI/CD.\n\n## Qualidade do Dockerfile com Hadolint\n\nUtilize [Hadolint](https://github.com/hadolint/hadolint) para verificar a qualidade do seu Dockerfile, garantindo que ele siga as melhores práticas e padrões de segurança.\n\n## Scan de Vulnerabilidade com Docker Scout e Trivy\n\nRealize scans de vulnerabilidade em suas imagens de container utilizando ferramentas como [Docker Scout](https://docs.docker.com/scan/) e [Trivy](https://github.com/aquasecurity/trivy) para identificar e corrigir possíveis falhas de segurança.\n\n## Conclusão\n\nA importância de utilizar imagens pequenas e sem vulnerabilidades não pode ser subestimada. Imagens menores reduzem o tempo de download e a superfície de ataque, enquanto a ausência de vulnerabilidades garante um ambiente mais seguro e confiável.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnataliagranato%2Fdocker101","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnataliagranato%2Fdocker101","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnataliagranato%2Fdocker101/lists"}