Cloud builder

I cloud builder sono immagini container con linguaggi e strumenti comuni installati. Puoi configurare Cloud Build per eseguire un comando specifico nel contesto di questi builder.

Questa pagina descrive i tipi di builder che puoi utilizzare con Cloud Build.

Immagini disponibili pubblicamente

Cloud Build ti consente di utilizzare qualsiasi immagine disponibile pubblicamente per eseguire le tue attività. Per utilizzare un'immagine, specifica l'URL dell'immagine nel campo name nel file di configurazione. Utilizza il campo args per specificare i comandi che vuoi eseguire all'interno dell'immagine. Il campo args di un passaggio di build accetta un elenco di argomenti e li passa all'immagine a cui fa riferimento il campo name.

Lo snippet di codice riportato di seguito mostra come utilizzare l'immagine pubblica ubuntu di Docker Hub ed eseguire un comando all'interno dell'immagine:

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

Ecco un altro snippet di codice di esempio che utilizza l'immagine per lo scanner open source Black Duck per Cloud Build da Google Cloud console Launcher:

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

Per altri esempi su come utilizzare le immagini disponibili pubblicamente da Docker Hub per le tue attività, consulta Creazione di applicazioni Node.js e Creazione di applicazioni Go.

Immagini di builder supportate fornite da Cloud Build

Cloud Build fornisce e gestisce immagini predefinite a cui puoi fare riferimento nel file di configurazione per eseguire le tue attività. Puoi trovare queste immagini predefinite nella seguente posizione:

gcr.io/cloud-builders/...

Il codice sorgente di questi builder è disponibile nel repository GitHub di cloud builder.

Per esempi su come utilizzare le immagini predefinite supportate, consulta Creazione di immagini container e Deployment su Cloud Run.

La tabella seguente elenca alcuni esempi di immagini del builder supportate:

Builder Nome Esempio
bazel gcr.io/cloud-builders/bazel Esempio di Bazel
docker gcr.io/cloud-builders/docker Esempio di Docker
git gcr.io/cloud-builders/git git example
gcloud gcr.io/cloud-builders/gcloud Esempio gcloud
gke-deploy gcr.io/cloud-builders/gke-deploy gke-deploy example
gradle gcr.io/cloud-builders/gradle gradle example
maven gcr.io/cloud-builders/mvn Esempio Maven
L'elenco completo dei builder supportati per Cloud Build.

Builder forniti dalla community

La community di sviluppatori di Cloud Build fornisce builder open source che puoi utilizzare per eseguire le tue attività. Le immagini predefinite non sono disponibili per questi builder; per utilizzarli, scarica il codice sorgente dal repository GitHub della community di cloud builder e poi crea l'immagine. Per un esempio su come creare un builder contribuito dalla community e poi utilizzarlo per le tue attività, consulta Creazione di immagini VM tramite Packer.

La tabella seguente elenca alcuni esempi di builder creati dalla community:

Builder Descrizione
docker-compose Esegue test di integrazione sulle immagini Docker.
harness-chaos Avvia esperimenti di chaos engineering e testa la resilienza delle applicazioni con Harness Chaos Engineering.
helm Gestisce i pacchetti Kubernetes utilizzando Helm.
kaniko Esegue il passaggio di build utilizzando kaniko.
pack Esegue il passaggio di build utilizzando il Cloud Native Buildpack specificato.
packer Automatizza la creazione di immagini macchina utilizzando Packer.
remote-builder Esegue il passaggio di build su una VM di Compute Engine configurabile.
L'elenco completo dei builder forniti dalla community per Cloud Build.

I builder forniti dalla community sono gestiti dalla community open source all'indirizzo cloud builders community. Cloud Build non gestisce ufficialmente questi builder. Per informazioni su come contribuire a un builder, consulta la pagina GitHub della community di cloud builder.

Scrivere un builder personalizzato

Puoi creare il tuo generatore personalizzato da utilizzare nelle build. Un builder personalizzato è un'immagine container che Cloud Build recupera ed esegue con il tuo codice sorgente. Il builder personalizzato può eseguire qualsiasi script o binario all'interno del container, pertanto può fare tutto ciò che può fare un container. Per istruzioni sulla creazione di un builder personalizzato, vedi Creare passaggi di build personalizzati.

Passaggi successivi