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
nel file di configurazione. Utilizza il campo args
per specificare i comandi da eseguire
all'interno dell'immagine. Il campo args
di un passaggio di compilazione prende 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 dal lanciatore della console Google Cloud:
steps:
- name: launcher.gcr.io/blackduck-public/blackducksoftware-containerbuilder-scanner
...
Per altri esempi su come utilizzare le immagini disponibili pubblicamente di 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 precompilate 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 dei cloud builder.
Per esempi su come utilizzare le immagini predefinite supportate, consulta Creazione di immagini container e Esecuzione del deployment in Cloud Run.
La seguente tabella elenca alcuni esempi di immagini del generatore supportate:
Builder | Nome | Esempio |
---|---|---|
bazel | gcr.io/cloud-builders/bazel |
bazel example |
docker | gcr.io/cloud-builders/docker |
esempio docker |
git | gcr.io/cloud-builders/git |
esempio git |
gcloud | gcr.io/cloud-builders/gcloud |
Esempio gcloud |
gke-deploy | gcr.io/cloud-builders/gke-deploy |
Esempio di gke-deploy |
gradle | gcr.io/cloud-builders/gradle |
esempio gradle |
maven | gcr.io/cloud-builders/mvn |
esempio maven |
L'elenco completo dei builder supportati per Cloud Build. |
Costruttori forniti dalla community
La community di sviluppatori di Cloud Build fornisce compilatori open source che puoi utilizzare per eseguire le tue attività. Per questi compilatori non sono disponibili immagini predefinite. Per utilizzarli, scarica il codice sorgente dal repository GitHub della community cloud-builders e poi compila l'immagine. Per un esempio su come creare un compilatore fornito dalla community e utilizzarlo per le tue attività, consulta Creazione di immagini VM tramite Packer.
La seguente tabella elenca alcuni esempi di elementi creati dalla community:
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. |
kaniko |
Esegue il passaggio di compilazione utilizzando kaniko. |
pack |
Esegue il passaggio di build utilizzando il buildpack Cloud Native specificato. |
packer |
Automatizza la creazione di immagini macchina utilizzando Packer. |
remote-builder |
Esegue il passaggio di compilazione su una VM 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 compilatori. 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 generatore personalizzato da utilizzare nelle tue build. Un compilatore personalizzato è un'immagine container che Cloud Build estrae ed esegue con il codice sorgente. Il tuo builder personalizzato può eseguire qualsiasi script o file binario all'interno del contenitore, pertanto può fare tutto ciò che può fare un contenitore. Per istruzioni su come creare un builder personalizzato, consulta la sezione Creare passaggi di compilazione personalizzati.
Passaggi successivi
- Scopri come utilizzare i builder personalizzati e quelli forniti dalla community.
- Scopri la struttura di un file di configurazione della build.
- Scopri come utilizzare un'immagine
node
disponibile pubblicamente per creare applicazioniNode.js
. - Scopri come utilizzare un'immagine
gcloud
predefinita per eseguire il deployment nelle funzioni Cloud Run. - Scopri come utilizzare un'immagine
firebase
fornita dalla community per eseguire il deployment su Firebase.