Nesta página, explicamos como usar o Cloud Build para criar uma imagem do Docker e enviar a imagem para o Artifact Registry. O Artifact Registry fornece um único local para gerenciar imagens de contêiner do Docker e pacotes particulares.
Primeiro, você cria a imagem usando um Dockerfile
, que é o arquivo de configuração do Docker, depois cria a mesma imagem usando o arquivo de configuração do Cloud Build.
Antes de começar
-
Faça login na sua conta do Google.
Se você ainda não tiver uma, inscreva-se.
-
No Console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.
-
Verifique se o faturamento está ativado para seu projeto na nuvem. Saiba como confirmar se o faturamento está ativado para o projeto.
- Ative as APIs Cloud Build, Artifact Registry.
- Instale e inicialize o SDK do Cloud..
Como preparar arquivos de origem
Você precisará de um código-fonte de amostra para empacotar em uma imagem do contêiner. Nesta seção, você criará um script de shell simples e um Dockerfile
. Um Dockerfile
é um documento de texto que contém instruções para o Docker criar uma imagem.
Abra uma janela de terminal.
Crie um novo diretório chamado
quickstart-docker
e navegue até ele:mkdir quickstart-docker cd quickstart-docker
Crie um arquivo chamado
quickstart.sh
com o seguinte conteúdo:Crie um arquivo chamado
Dockerfile
com o seguinte conteúdo:Execute o seguinte comando para tornar
quickstart.sh
executável:chmod +x quickstart.sh
Criar um repositório do Docker no Artifact Registry
Crie um novo repositório do Docker chamado
quickstart-docker-repo
no localus-central1
com a descrição "repositório do Docker":gcloud artifacts repositories create quickstart-docker-repo --repository-format=docker \ --location=us-central1 --description="Docker repository"
Verifique se o repositório foi criado:
gcloud artifacts repositories list
Criar usando o Dockerfile
O Cloud Build torna possível que você crie uma imagem do Docker usando um Dockerfile
. Você não precisa de um arquivo de configuração separado do Cloud Build.
Para criar usando um Dockerfile
:
Para receber o ID do projeto do Cloud, execute o seguinte comando:
gcloud config get-value project
Execute o seguinte comando no diretório que contém o
quickstart.sh
eDockerfile
, em que project-id é o ID do projeto do Cloud:gcloud builds submit --tag us-central1-docker.pkg.dev/project-id/quickstart-docker-repo/quickstart-image:tag1
Após a conclusão da build, você verá uma resposta semelhante a esta:
DONE
------------------------------------------------------------------------------------------------------------------------------------
ID CREATE_TIME DURATION SOURCE IMAGES STATUS
545cb89c-f7a4-4652-8f63-579ac974be2e 2020-11-05T18:16:04+00:00 16S gs://gcb-docs-project_cloudbuild/source/1604600163.528729-b70741b0f2d0449d8635aa22893258fe.tgz us-central1-docker.pkg.dev/gcb-docs-project/quickstart-docker-repo/quickstart-image:tag1 SUCCESS
Você acabou de criar uma imagem do Docker chamada quickstart-image
usando um Dockerfile
e enviou a imagem para o Artifact Registry.
Criar usando um arquivo de configuração de build
Nesta seção, você usará um arquivo de configuração do Cloud Build para criar a mesma imagem do Docker como acima. O arquivo de configuração de build instrui o Cloud Build a realizar tarefas com base nas suas especificações.
No mesmo diretório que contém
quickstart.sh
eDockerfile
, crie um arquivo chamadocloudbuild.yaml
com o seguinte conteúdo. Esse arquivo é o arquivo de configuração da versão. No momento da criação, o Cloud Build substitui automaticamente$PROJECT_ID
pelo ID do projeto.Inicie a build executando o comando a seguir:
gcloud builds submit --config cloudbuild.yaml
Quando a criação for concluída, você verá um resultado semelhante a este:
DONE
------------------------------------------------------------------------------------------------------------------------------------
ID CREATE_TIME DURATION SOURCE IMAGES STATUS
046ddd31-3670-4771-9336-8919e7098b11 2020-11-05T18:24:02+00:00 15S gs://gcb-docs-project_cloudbuild/source/1604600641.576884-8153be22c94d438aa86c78abf11403eb.tgz us-central1-docker.pkg.dev/gcb-docs-project/quickstart-docker-repo/quickstart-image:tag1 SUCCESS
Você acabou de criar quickstart-image
usando o arquivo de configuração da versão e enviou
a imagem para o Artifact Registry.
Ver os detalhes da criação
Abra a página do Cloud Build no Console do Google Cloud.
Selecione o projeto e clique em Abrir.
Você verá a página Histórico da versão:
Clique em um build específico.
Você verá a página Detalhes da build:
Para ver os artefatos de criação, em Resumo da build, clique em Artefatos da build.
Você verá um resultado semelhante a este:
Nesta página, faça o download do seu registro da build e veja os detalhes da imagem no Artifact Registry.
Limpeza
Para evitar cobranças na sua conta do Google Cloud pelos recursos usados neste guia de início rápido, siga estas etapas:
Abra a página do Artifact Registry no Console do Google Cloud.
Selecione o projeto e clique em Abrir.
Selecione quickstart-docker-repo.
Clique em Excluir.
Você já excluiu o repositório criado como parte deste guia de início rápido.
Pronto, você concluiu as etapas deste início rápido.
A seguir
- Saiba como criar um arquivo básico de configuração de build.
- Saiba como implantar usando o Cloud Build.
- Saiba como criar contêineres.
- Saiba como criar aplicativos Node.js.
- Saiba como criar aplicativos Java.