Cloud builders

Cloud builders são imagens de contêiner com linguagens e ferramentas comuns instaladas. É possível configurar o Cloud Build para executar um comando específico no contexto desses builders.

Nesta página, descrevemos os tipos de builder que podem ser usados com o Cloud Build.

Imagens disponíveis publicamente

O Cloud Build permite usar qualquer imagem disponível publicamente para executar as tarefas. Para usar uma imagem, especifique o URL da imagem no campo name do arquivo de configuração. Use o campo args para especificar os comandos que você quer executar na imagem. O campo args de uma etapa de build recebe uma lista de argumentos e os transmite para a imagem referenciada pelo campo name.

O snippet de código a seguir mostra como usar a imagem pública ubuntu do Docker Hub e executar um comando nessa imagem:

steps:
- name: 'ubuntu'
  args: ['echo', 'hello world']

Veja outro exemplo de snippet de código que usa a imagem do scanner de código aberto Black Duck para o Cloud Build no acesso rápido do Console do Google Cloud:

steps:
- name: launcher.gcr.io/blackduck-public/blackducksoftware-containerbuilder-scanner
  ...

Para mais exemplos de como usar imagens disponíveis publicamente do Docker Hub em suas tarefas, consulte Como criar aplicativos Node.js e Como criar aplicativos Go.

Imagens do builder compatíveis fornecidas pelo Cloud Build

O Cloud Build fornece e mantém imagens pré-criadas que podem ser consultadas no arquivo de configuração para executar suas tarefas. Essas imagens pré-criadas estão no Container Registry, no seguinte local:

gcr.io/cloud-builders/...

O código-fonte desses criadores está disponível no repositório GitHub dos criadores de nuvem.

Para exemplos de como usar imagens pré-criadas compatíveis, consulte Como criar imagens de contêiner e Como implantar no Cloud Run.

A tabela a seguir lista alguns exemplos de imagens de builders compatíveis:

Criador Nome Exemplo
bazel gcr.io/cloud-builders/bazel exemplo do bazel
docker gcr.io/cloud-builders/docker exemplo do docker
git gcr.io/cloud-builders/git exemplo do git
gcloud gcr.io/cloud-builders/gcloud exemplo do gcloud
gke-deploy gcr.io/cloud-builders/gke-deploy exemplo do gke-deploy
A lista completa de builders compatíveis com o Cloud Build.

Builders fornecidos pela comunidade

A comunidade de desenvolvedores do Cloud Build fornece builders de código aberto que podem ser usados para executar tarefas. Não há imagens pré-criadas não disponíveis para esses builders. Para usá-los, faça o download do código-fonte no repositório GitHub da comunidade de cloud builders e, em seguida, crie a imagem. Para um exemplo de como criar um builder contribuído pela comunidade e usá-lo para suas tarefas, consulte Como criar imagens de VM usando o Packer.

A tabela a seguir lista alguns exemplos de criadores contribuídos pela comunidade:

Criador Descrição
docker-compose Executa testes de integração em imagens do Docker.
remote-builder Executa sua etapa de construção em uma máquina virtual do Compute Engine configurável.
packer Automatiza a criação de imagens de máquinas usando o Packer
helm Gerencia pacotes do Kubernetes usando Helm.
A lista completa de builders contribuídos pela comunidade para o Cloud Build.

Para informações sobre como contribuir com um criador, consulte a página do GitHub da comunidade de criadores de nuvem.

Como escrever seu próprio builder personalizado

Você pode gerar seu próprio criador personalizado para usar nas versões. Um criador personalizado é uma imagem de contêiner que o Cloud Build extrai e executa com sua fonte. O builder personalizado pode executar qualquer script ou binário dentro do contêiner. Ou seja, ele pode fazer tudo que um contêiner faz. Para instruções sobre como criar um builder personalizado, consulte Como criar etapas de um build personalizado.

A seguir