Configuração de builds de contêineres automatizados com o GCP Cloud Build
Implantação e integração contínuas é o processo de execução automática de testes e compilações sempre que mudanças na origem são enviadas. Você pode configurar o Google Cloud Platform (GCP) para executar compilações automatizadas do Docker sempre que fizer atualizações em seu contêiner e implantar no Cloud Run ou Google Kubernetes Engine (GKE).
No geral, a configuração para isso é bastante fácil — Dockerfiles já manipula a maioria da configuração de compilação, então tudo o que é exigido de você é vincular alguns serviços e configurar o Cloud Build para implantar atualizações na nuvem Execute ou GKE.
Crie um Cloud Source Repository
O Cloud Build extrai o código do Cloud Source, a solução Git gerenciada do Google. No entanto, você não precisará fazer a transição de seu provedor atual, pois pode simplesmente vincular sua conta GitHub ou Bitbucket ou apenas configurá-lo como um controle remoto de lançamento separado.
Vá para o console do Cloud Source e crie um novo repo. Dê um nome a ele e faça login com sua conta para selecionar um repositório.
Se você estiver adicionando-o como um controle remoto separado, poderá adicionar o repo com o comando git remote add fornecido, que o tornará disponível com o nome remoto “ google. ” Para enviar para este branch, tudo o que você precisa fazer é qualificar totalmente o nome remoto e do branch ao executar git push, substituindo a origem padrão por google:
git push --todo google
Configurando o Cloud Build
Vá para o Cloud Build Console e configure um novo gatilho de compilação:
Este gatilho será executado em resposta a eventos no repositório de origem. Dê a ele um nome e selecione se deseja construir em resposta a commits para um branch específico, ou quando novas tags são enviadas ou quando solicitações pull são feitas para o GitHub.
Abaixo disso, selecione “ Dockerfile ” como a configuração de compilação, em vez da configuração YAML do próprio Google. Esta é a vantagem de trabalhar com contêineres; você já manipulou o processo de compilação na configuração do Docker, portanto, pode simplesmente selecioná-lo aqui.
Se o seu Dockerfile se chamar “ Dockerfile ” e colocado na raiz do repositório, você pode deixar os dois primeiros campos em branco. Para o nome da imagem, ele será enviado ao GCR, o próprio registro de contêiner do Google.
gcr. io/$PROJECT_ID/imagename:$COMMIT_SHA
Depois de criado, você pode clicar em “ Executar acionador ” para iniciar manualmente a construção. Como o Cloud Build usa apenas o Dockerfile, contanto que seja compilado localmente, você não deve ter problemas com a compilação.
Se você for ao console do GCR, deverá ver a imagem recém-construída.
Configurando implantações automáticas para Cloud Run
Você pode atualizar manualmente suas implantações, mas se quiser fazer atualizações automáticas, você &’ precisará de um pouco mais de configuração.
Em vez de escolher apenas o Dockerfile, você pode escolher usar um arquivo YAML tradicional, que permitirá que você execute alguns comandos após o processo de construção. Nesse caso, executar gcloud run deploy e passar uma referência para a imagem recém-criada no GCR.
etapas: # criar a imagem do contêiner - nome: 'gcr. io/cloud-builders/docker' args: ['build', '-t', 'gcr. io/$PROJECT_ID/[SERVICE- NAME]: $ COMMIT_SHA ','. '] # Envia a imagem do contêiner para o Container Registry - name:' gcr. io/cloud-builders/docker 'args: [' push ',' gcr. io/$PROJECT_ID/[SERVICE -NAME]: $ COMMIT_SHA '] # Implantar imagem de contêiner no Cloud Run - name:' gcr. io/cloud-builders/gcloud 'args: -' run '-' deploy '-' [SERVICE-NAME] '-' - -image '-' gcr. io/$PROJECT_ID/[SERVICE-NAME]:$COMMIT_SHA '-' --region '-' [REGION] '-' --plataforma '-' gerenciado 'imagens: -' gcr. io / $ PROJECT_ID / [SERVICE-NAME]: $ COMMIT_SHA '
Você também precisará conceder permissão ao Cloud Build para acessar o Cloud Run nas configurações da conta de serviço.
Nenhum comentário