Esegui il deployment di un'applicazione containerizzata in Cloud Run utilizzando Cloud Build

Questa pagina mostra come utilizzare Cloud Build per eseguire il deployment di un'applicazione containerizzata in Cloud Run.


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

Procedura guidata


Prima di iniziare

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Cloud Build, Cloud Run, Artifact Registry, and Compute Engine APIs.

    Enable the APIs

  5. Install the Google Cloud CLI.
  6. To initialize the gcloud CLI, run the following command:

    gcloud init
  7. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  8. Make sure that billing is enabled for your Google Cloud project.

  9. Enable the Cloud Build, Cloud Run, Artifact Registry, and Compute Engine APIs.

    Enable the APIs

  10. Install the Google Cloud CLI.
  11. To initialize the gcloud CLI, run the following command:

    gcloud init

Concedi le autorizzazioni

Cloud Build richiede Amministratore Cloud Run e Utente account di servizio IAM autorizzazioni necessarie prima di poter eseguire il deployment di un'immagine in Cloud Run.

  1. Apri una finestra del terminale.

  2. Imposta le variabili di ambiente per archiviare l'ID e il numero del progetto:

    PROJECT_ID=$(gcloud config list --format='value(core.project)')
    PROJECT_NUMBER=$(gcloud projects describe $PROJECT_ID --format='value(projectNumber)')
    
  3. Concedi il ruolo di Amministratore Cloud Run all'account di servizio Cloud Build:

    gcloud projects add-iam-policy-binding $PROJECT_ID \
        --member=serviceAccount:$PROJECT_NUMBER@cloudbuild.gserviceaccount.com \
        --role=roles/run.admin
    
  4. Concedi il ruolo IAM Utente account di servizio all'account di servizio Cloud Build per l'account di servizio di runtime Cloud Run:

    gcloud iam service-accounts add-iam-policy-binding \
        $PROJECT_NUMBER-compute@developer.gserviceaccount.com \
        --member=serviceAccount:$PROJECT_NUMBER@cloudbuild.gserviceaccount.com \
        --role=roles/iam.serviceAccountUser
    

Esegui il deployment di un'immagine predefinita

Puoi configurare Cloud Build in modo da eseguire il deployment di un'immagine predefinita archiviata in Artifact Registry in Cloud Run.

Per eseguire il deployment di un'immagine predefinita:

  1. Apri una finestra del terminale (se non è già aperta).

  2. Crea una nuova directory denominata helloworld e accedi alla directory:

    mkdir helloworld
    cd helloworld
    
  3. Crea un file denominato cloudbuild.yaml con i seguenti contenuti. Questo file è il file di configurazione di Cloud Build. Contiene istruzioni per Cloud Build per eseguire il deployment dell'immagine denominata us-docker.pkg.dev/cloudrun/container/hello nel servizio Cloud Run denominato cloudrunservice.

    steps:
    - name: 'gcr.io/cloud-builders/gcloud'
      script: |
        gcloud run deploy cloudrunservice --image us-docker.pkg.dev/cloudrun/container/hello --region us-central1 --platform managed --allow-unauthenticated
  4. Esegui il deployment dell'immagine lanciando questo comando:

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

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

DONE
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

ID                                    CREATE_TIME                DURATION  SOURCE                                                                                            IMAGES  STATUS
784653b2-f00e-4c4b-9f5f-96a5f115bef4  2020-01-23T14:53:13+00:00  23S       gs://cloudrunqs-project_cloudbuild/source/1579791193.217726-ea20e1c787fb4784b19fb1273d032df2.tgz  -       SUCCESS

Hai appena eseguito il deployment dell'immagine hello in Cloud Run.

Esegui l'immagine di cui hai effettuato il deployment

  1. Apri la pagina Cloud Run nella console Google Cloud:

    Apri la pagina Cloud Run

  2. Seleziona il progetto e fai clic su Apri.

    Verrà visualizzata la pagina Servizi Cloud Run.

  3. Nella tabella, individua la riga denominata cloudrunservice e fai clic su cloudrunservice.

    Viene visualizzata la pagina Dettagli del servizio per cloudrunservice.

  4. Per eseguire l'immagine di cui hai eseguito il deployment su cloudrunservice, fai clic sull'URL:

    Screenshot della pagina dei dettagli del servizio Cloud Run

Passaggi successivi