Cloud builder

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

In questa pagina vengono descritti 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 da eseguire nell'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 ubuntu pubblica da 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 Avvio app 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 del 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 per 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 in Cloud Run.

Nella tabella seguente sono elencati 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 esempio git
gcloud gcr.io/cloud-builders/gcloud Esempio di gcloud
gke-deploy gcr.io/cloud-builders/gke-deploy Esempio di deployment con 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.

Strumenti per la creazione forniti dalla community

La community di sviluppatori di Cloud Build offre builder open source che puoi utilizzare per eseguire le tue attività. Le immagini predefinite non sono disponibili per questi builder. Per utilizzare questi builder, scarica il codice sorgente dal repository GitHub della community di Cloud Builder, quindi crea l'immagine. Per un esempio su come creare uno strumento di creazione fornito dalla community e utilizzarlo per le tue attività, consulta Creazione di immagini VM utilizzando Packer.

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

Builder Descrizione
docker-compose Esegue i test di integrazione sulle immagini Docker.
remote-builder Esegue il passaggio di build su una VM di Compute Engine configurabile.
packer Automatizza la creazione di immagini macchina utilizzando Packer
helm Gestisce i pacchetti Kubernetes utilizzando Helm.
pack Esegue il passaggio di build utilizzando il buildpack Cloud Native specificato.
kaniko Esegue il passaggio di build utilizzando kaniko.
L'elenco completo dei builder forniti dalla community per Cloud Build.

I builder forniti dalla community sono gestiti dalla community open source nella community di Cloud Builder. Cloud Build non gestisce ufficialmente questi builder. Per informazioni su come dare il tuo contributo a un builder, consulta la pagina GitHub della community di sviluppatori di cloud.

Creazione del tuo builder personalizzato

Puoi creare il tuo generatore personalizzato da utilizzare nelle tue build. Un builder personalizzato è un'immagine container che Cloud Build estrae ed esegue con la tua origine. Il tuo builder personalizzato può eseguire qualsiasi script o programma binario all'interno del container; pertanto può fare tutto ciò che può fare un container. Per istruzioni sulla creazione di un generatore personalizzato, consulta Creazione di passaggi per la creazione personalizzata.

Passaggi successivi