I cloud builder sono immagini container in cui sono installati linguaggi e strumenti comuni. 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 del 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.
Il seguente snippet di codice 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 Creare applicazioni Node.js e Creare applicazioni Go.
Immagini di builder supportate fornite da Cloud Build
Cloud Build fornisce e gestisce immagini predefinite a cui puoi fare riferimento nel tuo 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 dei cloud builder.
Per esempi su come utilizzare le immagini predefinite supportate, consulta Creare immagini container e Eseguire il deployment su Cloud Run.
La seguente tabella elenca alcuni esempi di immagini di 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 |
Esempio di git |
| gcloud | gcr.io/cloud-builders/gcloud |
Esempio di gcloud |
| gke-deploy | gcr.io/cloud-builders/gke-deploy |
Esempio di gke-deploy |
| gradle | gcr.io/cloud-builders/gradle |
Esempio di gradle |
| maven | gcr.io/cloud-builders/mvn |
Esempio di 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 dei cloud builder e poi crea l'immagine. Per un esempio su come creare un builder fornito dalla community e poi utilizzarlo per le tue attività, consulta Creare immagini VM tramite Packer.
La seguente tabella elenca alcuni esempi di builder forniti dalla community:
p| Builder | Descrizione |
|---|---|
docker-compose |
Esegue test di integrazione sulle immagini Docker. |
harness-chaos |
Avvia esperimenti di caos e testa la resilienza delle applicazioni con Harness Chaos Engineering. |
helm |
Gestisce i pacchetti Kubernetes utilizzando Helm. |
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 su cloud builders community. Cloud Build non gestisce ufficialmente questi builder. Per informazioni su come contribuire a un builder, consulta la pagina GitHub della community dei cloud builder.
Scrivere un builder personalizzato
Puoi creare il tuo builder personalizzato da utilizzare nelle build. Un builder personalizzato è un'immagine container di cui Cloud Build esegue il pull e che esegue con l'origine. Il builder personalizzato può eseguire qualsiasi script o file binario all'interno del container; di conseguenza, può fare tutto ciò che può fare un container. Per istruzioni sulla creazione di un builder personalizzato, consulta Creare passaggi di build personalizzati.
Passaggi successivi
- Scopri come utilizzare i builder forniti dalla community e i builder personalizzati.
- Scopri la struttura di un file di configurazione della build.
- Scopri come utilizzare un'immagine disponibile pubblicamente
nodeper creare applicazioniNode.js. - Scopri come utilizzare un'immagine
gcloudpredefinita per eseguire il deployment delle funzioni Cloud Run. - Scopri come utilizzare un'immagine
firebasefornita dalla community per eseguire il deployment su Firebase.