Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Crea ed esegui il push di un'immagine Docker con Cloud Build

Scopri come iniziare a utilizzare Cloud Build creando un'immagine Docker ed eseguendo il push dell'immagine ad Artifact Registry. Artifact Registry fornisce un'unica posizione per la gestione dei pacchetti privati e delle immagini container Docker.

Per prima cosa, crea l'immagine utilizzando un Dockerfile, che è il file di configurazione Docker, e crea la stessa immagine utilizzando il file di configurazione di Cloud Build.


Per indicazioni dettagliate su questa attività direttamente nell'editor di Cloud Shell, fai clic su Procedura guidata:

Procedura guidata


Nelle sezioni seguenti puoi seguire la stessa procedura utilizzata per fare clic su Procedura guidata.

Prima di iniziare

  1. Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
  2. Nella pagina del selettore dei progetti in Google Cloud Console, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  3. Assicurati che la fatturazione sia attivata per il tuo progetto Cloud. Scopri come verificare se la fatturazione è abilitata su un progetto.

  4. Abilita le API Cloud Build and Artifact Registry.

    Abilita le API

  5. Installa e inizializza Google Cloud CLI.
  6. Nella pagina del selettore dei progetti in Google Cloud Console, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  7. Assicurati che la fatturazione sia attivata per il tuo progetto Cloud. Scopri come verificare se la fatturazione è abilitata su un progetto.

  8. Abilita le API Cloud Build and Artifact Registry.

    Abilita le API

  9. Installa e inizializza Google Cloud CLI.

Prepara i file di origine da creare

Avrai bisogno di un codice sorgente di esempio per pacchettizzare in un'immagine container. In questa sezione creerai un semplice script shell e un Dockerfile. Dockerfile è un documento di testo che contiene le istruzioni che consentono a Docker di creare un'immagine.

  1. Apri una finestra del terminale.

  2. Crea una nuova directory denominata quickstart-docker e accedi alla directory:

    mkdir quickstart-docker
    cd quickstart-docker
    
  3. Crea un file denominato quickstart.sh con il seguente contenuto:

    echo "Hello, world! The time is $(date)."
  4. Crea un file denominato Dockerfile con il seguente contenuto:

    FROM alpine
    COPY quickstart.sh /
    CMD ["/quickstart.sh"]
  5. Nella finestra del terminale, esegui il comando seguente per rendere eseguibile quickstart.sh:

    chmod +x quickstart.sh
    

Crea un repository Docker in Artifact Registry

  1. Crea un nuovo repository Docker denominato quickstart-docker-repo nella località us-west2 con la descrizione "quot;Docker repository":

    gcloud artifacts repositories create quickstart-docker-repo --repository-format=docker \
        --location=us-west2 --description="Docker repository"
    
  2. Verifica che il repository sia stato creato:

    gcloud artifacts repositories list
    

    Vedrai quickstart-docker-repo nell'elenco dei repository visualizzati.

Crea un'immagine utilizzando Dockerfile

Cloud Build ti consente di creare un'immagine Docker utilizzando un Dockerfile. Non è necessario un file di configurazione Cloud Build separato.

Per creare un elemento utilizzando un Dockerfile:

  1. Recupera l'ID progetto Cloud eseguendo questo comando:

    gcloud config get-value project
    
  2. Esegui il comando seguente dalla directory contenente quickstart.sh e Dockerfile:

    gcloud builds submit --region=us-west2 --tag us-west2-docker.pkg.dev/project-id/quickstart-docker-repo/quickstart-image:tag1
    

Una volta completata la build, verrà visualizzato un output simile al seguente:

DONE
------------------------------------------------------------------------------------------------------------------------------------
ID                                    CREATE_TIME                DURATION  SOURCE   IMAGES     STATUS
545cb89c-f7a4-4652-8f63-579ac974be2e  2020-11-05T18:16:04+00:00  16S       gs://gcb-docs-project_cloudbuild/source/1604600163.528729-b70741b0f2d0449d8635aa22893258fe.tgz  us-west2-docker.pkg.dev/gcb-docs-project/quickstart-docker-repo/quickstart-image:tag1  SUCCESS

Hai appena creato un'immagine Docker denominata quickstart-image utilizzando Dockerfile e ne hai eseguito il push ad Artifact Registry.

Crea un'immagine utilizzando un file di configurazione della build

In questa sezione utilizzerai un file di configurazione di Cloud Build per creare la stessa immagine Docker di cui sopra. Il file di configurazione della build indica a Cloud Build di eseguire attività basate sulle tue specifiche.

  1. Nella stessa directory contenente quickstart.sh e Dockerfile, crea un file denominato cloudbuild.yaml con il seguente contenuto. Questo è il tuo file di configurazione della build. Al momento della creazione, Cloud Build sostituisce automaticamente $PROJECT_ID con l'ID progetto.

    steps:
    - name: 'gcr.io/cloud-builders/docker'
      args: [ 'build', '-t', 'us-west2-docker.pkg.dev/$PROJECT_ID/quickstart-docker-repo/quickstart-image:tag1', '.' ]
    images:
    - 'us-west2-docker.pkg.dev/$PROJECT_ID/quickstart-docker-repo/quickstart-image:tag1'
  2. Avvia la build eseguendo questo comando:

    gcloud builds submit --region=us-west2 --config cloudbuild.yaml
    

Al termine, verrà visualizzato un output simile al seguente:

DONE
------------------------------------------------------------------------------------------------------------------------------------
ID                                    CREATE_TIME                DURATION  SOURCE          IMAGES          STATUS
046ddd31-3670-4771-9336-8919e7098b11  2020-11-05T18:24:02+00:00  15S       gs://gcb-docs-project_cloudbuild/source/1604600641.576884-8153be22c94d438aa86c78abf11403eb.tgz  us-west2-docker.pkg.dev/gcb-docs-project/quickstart-docker-repo/quickstart-image:tag1  SUCCESS

Hai appena creato quickstart-image utilizzando il file di configurazione della build e hai eseguito il push dell'immagine ad Artifact Registry.

Visualizza i dettagli della build

  1. Apri la pagina Cloud Build in Google Cloud Console.

    Apri la pagina Cloud Build

  2. Seleziona il progetto e fai clic su Apri.

    Viene visualizzata la pagina Cronologia build:

    Screenshot della pagina della cronologia build

  3. Nel menu a discesa Regione, seleziona us-west2 per visualizzare le build in quella regione.

  4. Fai clic su una build.

    Viene visualizzata la pagina Dettagli build.

  5. Per visualizzare gli artefatti della build, in Riepilogo build, fai clic su Artefatti build.

    Verrà visualizzato un output simile al seguente:

    Screenshot degli artefatti della build

    Da questa pagina puoi scaricare il log di build e visualizzare i dettagli dell'immagine in Artifact Registry.

Esegui la pulizia

Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questa pagina, segui questi passaggi.

  1. Apri la pagina Artifact Registry in Google Cloud Console.

    Apri la pagina di Artifact Registry

  2. Seleziona il progetto e fai clic su Apri.

  3. Seleziona quickstart-docker-repo.

  4. Fai clic su Elimina.

Hai eliminato il repository che hai creato nell'ambito della guida rapida.

Passaggi successivi