Guia de início rápido do Container Registry
Neste guia de início rápido, descrevemos como configurar o Docker para o Container Registry e enviar e extrair uma imagem.
O Google Cloud tem dois serviços para armazenar e gerenciar imagens de contêiner:
- Artifact Registry (recomendado)
Um serviço para armazenar e gerenciar artefatos em repositórios privados, incluindo imagens de contêiner, gráficos do Helm e pacotes de linguagem. Ele é o registro de imagem de contêiner recomendado para o Google Cloud.
Teste o guia de início rápido do Docker para se familiarizar com o Artifact Registry.
- Container Registry
Um registro de imagem de contêiner particular compatível com o Docker Image Manifest V2 e os formatos de imagem OCI. Ele fornece um subconjunto de recursos do Artifact Registry.
Se você não estiver usando o Container Registry, use o Artifact Registry. Para ver uma comparação entre o Container Registry e o Artifact Registry e informações sobre a transição do Container Registry para o Artifact Registry, consulte Transição do Container Registry.
Antes de começar
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Verifique se a cobrança está ativada para o seu projeto do Google Cloud.
-
Enable the Container Registry API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Verifique se a cobrança está ativada para o seu projeto do Google Cloud.
-
Enable the Container Registry API.
Escolha um shell
Para concluir este guia de início rápido, use o Cloud Shell ou o shell local.
- Cloud Shell
- O Cloud Shell é um ambiente de shell para gerenciar recursos hospedados no Google Cloud. Ele vem pré-instalado com o Docker e a Google Cloud CLI, a principal interface de linha de comando do Google Cloud.
- Shell local
- Se preferir usar o shell local, instale o Docker e a CLI gcloud no ambiente.
Como iniciar o Cloud Shell
Para iniciar o Cloud Shell, execute os seguintes passos:
Acesse o Console do Google Cloud.
Na barra de menus, clique no botão Ativar o Cloud Shell: .
Uma sessão do Cloud Shell é aberta dentro de um quadro inferior no console.
Use esse shell para executar comandos gcloud
.
Como configurar um shell local
Para instalar o gcloud
e o Docker, execute as seguintes etapas:
Instale a CLI da gcloud. Para atualizar uma instalação atual, execute o comando
gcloud components update
.Instale o Docker se ele ainda não estiver instalado.
O Docker requer acesso com privilégios para interagir com registros. No Linux ou no Windows, adicione o usuário utilizado para executar comandos do Docker no grupo de segurança do Docker. Esta etapa não é necessária no MacOS porque o Docker Desktop é executado em uma máquina virtual como o usuário raiz.
Linux
O grupo de segurança do Docker é chamado de
docker
. Para adicionar seu nome de usuário, execute o seguinte comando:sudo usermod -a -G docker ${USER}
Windows
O grupo de segurança do Docker é chamado de
docker-users
. Para adicionar um usuário a partir do prompt de comando do administrador, execute o seguinte comando:net localgroup docker-users DOMAIN\USERNAME /add
Em que
- DOMAIN é seu domínio do Windows.
- USERNAME é seu nome de usuário.
Saia e acesse novamente para a mudança de filiação ao grupo fazer efeito. Se estiver usando uma máquina virtual, talvez seja necessário reiniciar a máquina virtual para a mudança fazer efeito;
Para garantir que o Docker esteja ativo, execute o seguinte comando do Docker, que retorna a hora e a data atuais:
docker run busybox date
Configurar a autenticação
Antes de enviar ou extrair imagens, configure o Docker para usar a Google Cloud CLI e autenticar solicitações ao Container Registry.
Execute este comando:
gcloud auth configure-docker
O comando atualiza a configuração do Docker. Agora é possível se conectar com o Container Registry no projeto do Google Cloud para enviar e extrair imagens por push ou pull.
Acessar uma imagem para enviar
Neste guia de início rápido, você enviará uma imagem de amostra chamada hello-app
.
- Altere para um diretório em que você quer salvar a imagem.
Execute o comando a seguir para extrair a versão 1.0 da imagem.
docker pull gcr.io/google-samples/hello-app:1.0
Adicionar a imagem ao Container Registry
Para adicionar uma imagem ao Container Registry, marque-a e envie-a para o registro.
Marcar a imagem com um nome de registro
Marcar a imagem do Docker com um
nome de registro configura o comando docker push
para enviar a imagem a
um local específico. Para este guia de início rápido, o local do host é gcr.io
.
Execute o seguinte comando para marcar a imagem como quickstart-image:tag1
:
docker tag gcr.io/google-samples/hello-app:1.0 gcr.io/PROJECT_ID/quickstart-image:tag1
Substitua:
- PROJECT-ID é o ID do projeto do console do Google Cloud que você precisa adicionar ao seu comando. Caso o ID do projeto contenha dois pontos
(
:
), consulte Projetos com escopo de domínio. gcr.io
é o nome do hostquickstart-image
é o nome da imagem do Dockertag1
é uma tag que você está adicionando à imagem do Docker. Se você não especificou uma tag, o Docker aplicará a tag padrãolatest
.
Agora você está pronto para enviar a imagem ao Container Registry.
Enviar a imagem ao Container Registry
Depois de configurar a autenticação e marcar a imagem local, é possível enviá-la para o repositório que você criou.
Basta executar o comando a seguir:
docker push gcr.io/PROJECT_ID/quickstart-image:tag1
em que PROJECT_ID é o ID do projeto
do console do Google Cloud.
Caso o ID do projeto contenha dois pontos (:
), consulte
Projetos com escopo de domínio.
Quando você envia uma imagem para um novo local de host, o serviço cria um bucket de armazenamento subjacente exclusivo para seu projeto. Para visualizar as imagens hospedadas pelo Container Registry, use o console do Google Cloud ou acesse o nome do registro da imagem no navegador da Web: http://gcr.io/PROJECT_ID/quickstart-image
.
Extrair a imagem do Container Registry
Para extrair a imagem do Container Registry para a máquina local, execute o comando a seguir:
docker pull gcr.io/PROJECT_ID/quickstart-image:tag1
Substitua PROJECT_ID pelo ID do projeto do console do Google Cloud.
Caso o ID do projeto contenha dois pontos (:
), consulte
Projetos com escopo de domínio.
O resultado será assim:
latest: Pulling from my-project/quickstart-image:tag1
Digest: sha256:70c42...
Status: Image is up to date for gcr.io/my-project/quickstart-image:tag1
Limpar
Para evitar cobranças na sua conta do Google Cloud pelos recursos usados nesta página, siga estas etapas.
Execute o comando a seguir para excluir a imagem do Docker do Container Registry.
gcloud container images delete gcr.io/PROJECT_ID/quickstart-image:tag1 --force-delete-tags
Substitua PROJECT_ID pelo ID do projeto do console do Google Cloud.
Caso o ID do projeto contenha dois pontos (:
), consulte
Projetos com escopo de domínio.
A seguir
- Saiba mais sobre como enviar e extrair imagens do Docker com o Container Registry.
- Saiba mais sobre como gerenciar imagens do Docker no Container Registry.
- Saiba como usar o Container Registry com outros serviços do Google Cloud.
- Saiba mais sobre os recursos do Container Registry.
- Saiba mais sobre o Docker.
- Leia nossos recursos sobre DevOps e conheça nosso programa de pesquisa.