O Que É um Container Registry? Onde as Imagens Vivem
Um container registry é o armazém e ponto de distribuição das imagens - você faz push de imagens para ele e pull delas.
Depois de construir uma imagem, você precisa de algum lugar para armazená-la e de uma forma de compartilhá-la com runners e servidores. Isso é um registry. Ele expõe uma API padrão para fazer push e pull de imagens por repositório e tag, e é uma peça central de qualquer pipeline de CI/CD que entrega containers.
Repositórios e tags
Um registry contém repositórios (ex.: acme/web), e cada repositório contém imagens com tags (acme/web:1.4, acme/web:latest). A referência completa combina host do registry, repositório e tag: ghcr.io/acme/web:1.4.
Push e pull
Builders fazem docker push das imagens para cima; runners e servidores fazem docker pull delas para baixo. Como as imagens são em layers e endereçadas por conteúdo, somente as layers ausentes são transferidas, o que mantém pulls repetidos rápidos.
Autenticação
Registries geralmente são privados, então você primeiro faz login com docker login (ou uma action que faz isso por você) usando um token ou credencial de curta duração. Em CI, prefira OIDC ou tokens escopados a senhas de longa duração.
Registries comuns
- Docker Hub - o registry público padrão.
- GHCR - GitHub Container Registry, atrelado às identidades do GitHub.
- Amazon ECR, Google Artifact Registry, Azure ACR - registries nativos de nuvem.
- Self-hosted (Harbor, o registry open source) para controle total.
Registries em CI
Um pipeline típico constrói uma imagem, faz push dela para um registry, e um passo de deploy faz pull dela. Pushes e pulls de registry podem sofrer erros de rede transitórios; runners gerenciados (Latchkey) fazem retry automático dessas falhas de registry para que um upload instável não faça o build inteiro falhar.
Principais conclusões
- Um registry armazena e distribui imagens por repositório e tag.
- Somente as layers ausentes são transferidas em um pull, então pulls repetidos são rápidos.
- Use credenciais escopadas e de curta duração (OIDC ou tokens) para autenticação em CI.