O Artifact Registry é o serviço recomendado para armazenamento e gerenciamento de imagens de contêiner no Google Cloud. Como um serviço totalmente gerenciado compatível com imagens de contêiner e artefatos sem contêiner, o Artifact Registry estende os recursos do Container Registry.
Se você atualmente usa o Container Registry, veja as informações nesta página para saber como fazer a transição para o Artifact Registry. O Container Registry ainda está disponível e é compatível com a API Google Enterprise , mas os novos recursos só estarão disponíveis no Artifact Registry. O Container Registry receberá apenas correções de segurança críticas.
Visão geral
O Artifact Registry oferece os mesmos recursos de gerenciamento de contêiner do Container Registry e inclui outros recursos e benefícios:
- Outros formatos de artefato
É possível criar repositórios para os seguintes formatos de artefato:
- Repositórios regionais
O Container Registry fornece apenas hosts de registro multirregionais. O Artifact Registry oferece hosts de registro regionais e multirregionais.
- Vários repositórios separados em um único local
No Container Registry, só é possível criar um host de registro em uma multirregião, e todos os repositórios no registro compartilham o mesmo bucket de armazenamento. No Artifact Registry, cada repositório é um recurso separado. É possível aplicar diferentes identificadores e políticas do Identity and Access Management a cada repositório.
- Permissões no repositório
No Container Registry, você concede permissões para cada host de registro multirregional. Não é possível aplicar permissões separadas no nível do repositório. O Artifact Registry oferece controle de acesso no nível do repositório.
- Papéis do IAM para o Artifact Registry
No Container Registry, você usa os papéis do Cloud Storage para controlar o acesso e precisa enviar uma imagem a um host de registro antes de configurar as permissões para o host. No Artifact Registry, use os papéis do Artifact Registry para conceder acesso, e há uma separação clara entre os papéis de administrador e de usuário do repositório.
- Streaming de imagens do Google Kubernetes Engine
O GKE pode fazer streaming de dados de imagens qualificadas, conforme solicitado pelos aplicativos, para que as cargas de trabalho possam ser inicializadas sem esperar o download completo da imagem. O streaming de imagens oferece escalonamento automático e inicialização de pods mais rápidos, além de reduzir a latência ao extrair imagens grandes.
- Implantação de origem no Cloud Run
Implante novos serviços e novas revisões no Cloud Run diretamente do código-fonte usando um único comando da Google Cloud CLI. A implantação de origem cria uma imagem de contêiner com base no código, a armazena no Artifact Registry e a implanta no Cloud Run.
Compatibilidade com versões anteriores e coexistência
É possível usar o Artifact Registry e o Container Registry no mesmo
projeto. Quando você vê uma lista de repositórios com o gcloud
ou
o Console do Google Cloud, o Artifact Registry também lista os repositórios do Container Registry
no mesmo projeto.
Para aproveitar os recursos expandidos no Artifact Registry, transfira seus contêineres e a automação para o Artifact Registry.
Opções de transição
É possível fazer a transição para o Artifact Registry usando uma destas opções:
- Repositórios padrão (recomendado)
- Repositórios regulares do Artifact Registry que oferecem suporte a todos os recursos e são totalmente independentes de qualquer host do Container Registry.
- Repositórios com suporte do domínio gcr.io
Repositórios especiais mapeados para nomes de host
gcr.io
do Container Registry. Esses repositórios são compatíveis com o redirecionamento do tráfego de nomes do hostgcr.io
para os repositórios gcr.io correspondentes no seu projeto.Esses repositórios têm algumas limitações de recursos. No entanto, se você tiver muitas configurações de ferramentas, scripts ou códigos com referências de
gcr.io
, uma abordagem mais tática poderá ser necessária para fazer a transição para o Artifact Registry.
Os dois tipos de repositório podem coexistir para que você faça a transição gradualmente. Exemplo:
- É possível criar repositórios gcr.io no Artifact Registry para fazer a transição da configuração atual do Container Registry e criar repositórios padrão para novo trabalho.
- Você pode usar uma abordagem de vários estágios na transição. Faça a transição para repositórios gcr.io no Artifact Registry e passe gradualmente para os repositórios padrão ao atualizar sua automação para oferecer suporte total ao repositório do Artifact Registry e aos caminhos de imagem.
Como configurar repositórios
No Artifact Registry, é preciso criar repositórios antes de enviar imagens para eles. Por isso, uma parte fundamental da migração para o Artifact Registry é configurar os repositórios do Artifact Registry e integrá-los à automação de CI/CD.
Para oferecer mais flexibilidade, há algumas mudanças na forma como o Artifact Registry representa repositórios.
- Container Registry
Cada local multirregional está associado a um único bucket de armazenamento. Organizar suas imagens em repositórios em um nome de host é opcional. Considere o exemplo a seguir que mostra a imagem
webapp
em três locais:us.gcr.io/my-project/webapp us.gcr.io/my-project/team1/webapp us.gcr.io/my-project/team2/webapp
Os repositórios são apenas um mecanismo de organização e não restringem o acesso. Qualquer usuário com acesso ao bucket de armazenamento para
us.gcr.io
neste projeto pode acessar todas as versões da imagem do contêinerwebapp
.- Artifact Registry
Cada repositório é um recurso separado no projeto. Como cada repositório é um recurso exclusivo, é possível:
- Dar a cada repositório um nome, descrição e rótulos
- Criar vários repositórios no mesmo local
- Configurar permissões específicas de repositório
Além disso, o local de um repositório pode ser uma região ou várias regiões.
.Essas alterações oferecem mais controle sobre seus repositórios. Por exemplo, se você tem equipes em São Paulo e Sydney, pode criar um repositório para cada equipe em uma região geograficamente mais próxima do que o local multirregional mais próximo.
southamerica-east1-docker.pkg.dev/my-project/team1/webapp australia-southeast1-docker.pkg.dev/my-project/team2/webapp
Em seguida, você pode conceder a cada equipe permissões somente para o repositório da equipe.
Consulte o guia de configuração para ver instruções de transição para o Artifact Registry.
Como enviar e extrair imagens
Para ajudar você a adaptar a configuração, os comandos e a documentação existentes projetados para o Container Registry, as informações a seguir comparam a criação, o envio, a extração e a implantação de imagens.
Comparação do recurso
Esta seção resume as alterações e melhorias nos recursos do Container Registry.
Seleção de | Container Registry | Artifact Registry |
---|---|---|
Formatos compatíveis | Somente imagens de contêiner | Vários formatos de artefato, incluindo imagens de contêiner, pacotes de idioma e pacotes do SO. |
Repositórios |
|
|
Nomes de host | Os hosts estão no domínio gcr.io . |
Os hosts estão no domínio pkg.dev . Para detalhes sobre o
formato do nome, consulte
Nomes de repositório e artefato.
É possível usar o suporte ao domínio gcr.io para
redirecionar automaticamente o tráfego dos seus hosts |
Permissões |
|
|
Authentication | Fornece vários métodos de autenticação para enviar e receber imagens com um cliente de terceiros. | O Artifact Registry é compatível com os mesmos métodos de
autenticação do Container Registry. Consulte Como configurar a autenticação para o Docker para mais detalhes.
Se você usar o auxiliar de credenciais do Docker:
|
Chaves de criptografia gerenciadas pelo cliente (CMEK, na sigla em inglês) | Use CMEK para criptografar os buckets de armazenamento que contêm suas imagens. | Use CMEK para criptografar repositórios individuais. |
Como usar o Console do Google Cloud | Ver e gerenciar imagens do Container Registry na seção Container Registry do console do Google Cloud. | Veja uma lista dos repositórios do Artifact Registry e do Container Registry
na seção Artifact Registry
do Console do Google Cloud. Gerencie seus repositórios e imagens do
Artifact Registry nesta página.
Se você clicar em um repositório do Container Registry, será direcionado para a lista de imagens na seção Container Registry do console do Google Cloud. |
Como usar os comandos gcloud e API | Usa comandos gcloud container images. Os comandos são compatíveis com resumos. Se você não especificar a string de resumo completa, o Container Registry tentará localizar a imagem correta com base na string parcial. | Usa os comandos gcloud artifacts docker. Os comandos não são compatíveis com resumos.
Para ver uma comparação dos comandos gcloud do Container Registry e do Artifact Registry, consulte a comparação do comando gcloud. O Artifact Registry também inclui uma API para gerenciar repositórios e artefatos em todos os formatos. |
Notificações do Pub/Sub | Publica alterações no tópico gcr . |
Publica alterações no tópico gcr . Se você criar repositórios
no mesmo projeto que o serviço do Container Registry atual, a
configuração atual do Pub/Sub funcionará automaticamente.
Para saber mais, consulte Como configurar notificações do Pub/Sub. |
Imagens do Docker Hub em cache | Armazena em cache
as imagens do Docker Hub solicitadas com mais frequência em mirror.gcr.io . |
mirror.gcr.io continua a armazenar em cache
imagens do Docker Hub solicitadas com frequência. |
VPC Service Controls | É possível adicionar o Container Registry a um perímetro de serviço. | É possível adicionar o Artifact Registry a um perímetro de serviço. |
Armazenamento e análise de metadados com o Container Analysis | Verificações de vulnerabilidades do pacote de idiomas e do SO com verificação sob demanda
em imagens com um SO compatível. A verificação automática retorna apenas informações sobre a vulnerabilidade do SO.
Saiba mais sobre os tipos de
leitura.
|
Verificações de vulnerabilidades do pacote de idiomas e do SO com a verificação automática
e sob demanda.
Saiba mais sobre os tipos de
leitura.
|
Imagens fornecidas pelo Google | As imagens fornecidas pelo Google são hospedadas em gcr.io . Examples
incluem:
|
As imagens fornecidas pelo Google continuam disponíveis em gcr.io . |
Streaming de imagens | Indisponível | O GKE pode fazer o streaming de dados de imagens qualificadas no Artifact Registry para escalonamento automático mais rápido, inicialização mais rápida de pods e redução de latência ao extrair imagens grandes. |
Implantação de origem do Cloud Run | Indisponível | A implantação de origem permite usar um único comando da CLI gcloud para criar uma imagem de contêiner a partir do código-fonte, armazenar a imagem no Artifact Registry e implantá-la no Cloud Run. |
Preços | Os preços do Container Registry são baseados no uso do Cloud Storage, incluindo armazenamento e saída de rede. | O Artifact Registry tem seu próprio preço, com base no armazenamento e na saída da rede. |