Configura le variabili di ambiente per i pool di worker

Questa pagina descrive come configurare le variabili di ambiente per il pool di worker Cloud Run.

Qualsiasi modifica alla configurazione comporta la creazione di una nuova revisione. Anche le revisioni successive riceveranno automaticamente questa impostazione di configurazione, a meno che tu non apporti aggiornamenti espliciti per modificarla.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per configurare e implementare i pool di worker Cloud Run, chiedi all'amministratore di concederti i seguenti ruoli IAM:

Per un elenco di ruoli e autorizzazioni IAM associati a Cloud Run, consulta Ruoli IAM Cloud Run e Autorizzazioni IAM Cloud Run. Se il tuo pool di worker Cloud Run interagisce con le APIGoogle Cloud , come le librerie client Cloud, consulta la guida alla configurazione dell'identità del servizio. Per ulteriori informazioni sulla concessione dei ruoli, consulta Autorizzazioni di deployment e Gestire l'accesso.

Imposta le variabili di ambiente

Puoi impostare le variabili di ambiente per un pool di worker Cloud Run utilizzando la consoleGoogle Cloud , Google Cloud CLI o Terraform:

Console

  1. Nella console Google Cloud , vai a Cloud Run:

    Vai a Cloud Run

  2. Seleziona Worker pool dal menu e fai clic su Esegui il deployment del container per configurare un nuovo worker pool. Se stai configurando un worker pool esistente, fai clic sul worker pool, poi su Modifica ed esegui il deployment della nuova revisione.

  3. Se stai configurando un nuovo pool di worker, compila la pagina iniziale del pool di worker, poi fai clic su Container, volumi, networking, sicurezza per espandere la pagina di configurazione dei pool di worker.

  4. Fai clic sulla scheda Contenitore.

    immagine

    • Nella scheda Variabili e segreti, fai clic su Aggiungi variabile per aggiungere una nuova variabile di ambiente, quindi specifica il nome che vuoi assegnare alla variabile nei campi Nome e Valore. Per ulteriori informazioni su come impostare più variabili di ambiente o eseguire l'escape di caratteri speciali, vedi Impostare più variabili di ambiente.
  5. Fai clic su Crea o Esegui il deployment.

gcloud

Per specificare le variabili di ambiente durante il deployment del pool di worker, utilizza il flag --set-env-vars:

gcloud beta run worker-pools deploy WORKER_POOL --image IMAGE_URL --set-env-vars KEY1=VALUE1,KEY2=VALUE2

Sostituisci quanto segue:

  • WORKER_POOL: il nome del pool di worker
  • KEY1=VALUE1,KEY2=VALUE2: l'elenco separato da virgole di nomi e valori delle variabili
  • IMAGE_URL: un riferimento all'immagine del container che contiene il pool di worker, ad esempio us-docker.pkg.dev/cloudrun/container/worker-pool:latest

Per ulteriori informazioni su come impostare più variabili di ambiente o eseguire l'escape di caratteri speciali, vedi Impostare più variabili di ambiente.

Terraform

Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base.

resource "google_cloud_run_v2_worker_pool" "default" {
  name     = "WORKER_POOL"
  location = "REGION"
  launch_stage = "BETA"

  template {
    containers {
      image = "IMAGE_URL"
      env {
        name  = "KEY1"
        value = "VALUE1"
      }
      env {
        name  = "KEY2"
        value = "VALUE2"
      }
    }
  }
}

Sostituisci quanto segue:

  • WORKER_POOL: il nome del pool di worker.
  • REGION: la Google Cloud regione, ad esempio europe-west1
  • IMAGE_URL: un riferimento all'immagine del container che contiene il pool di worker, ad esempio us-docker.pkg.dev/cloudrun/container/worker-pool:latest
  • KEY1 e VALUE1: la variabile di ambiente e il valore. Se vuoi, aggiungi altre variabili e valori in base alle necessità.

Imposta le variabili di ambiente predefinite nel container

Puoi utilizzare l'istruzione ENV in un Dockerfile per impostare i valori predefiniti per le variabili di ambiente:

ENV KEY1=VALUE1,KEY2=VALUE2

Ordine di precedenza: variabili del container e del pool di worker

Se imposti una variabile di ambiente predefinita nel container e imposti anche una variabile di ambiente con lo stesso nome nel pool di worker Cloud Run, il valore impostato nel pool di worker ha la precedenza.

Imposta più variabili di ambiente

Puoi impostare più variabili di ambiente utilizzando il file .env o il flag --set-env-vars.

Impostare più variabili di ambiente utilizzando il file .env

Console

  1. Nella console Google Cloud , vai a Cloud Run:

    Vai a Cloud Run

  2. Seleziona Worker pool dal menu e fai clic su Esegui il deployment del container per configurare un nuovo worker pool. Se stai configurando un worker pool esistente, fai clic sul worker pool, poi su Modifica ed esegui il deployment della nuova revisione.

  3. Se stai configurando un nuovo pool di worker, compila la pagina iniziale del pool di worker, poi fai clic su Container, volumi, networking, sicurezza per espandere la pagina di configurazione dei pool di worker.

  4. Fai clic sulla scheda Contenitore.

    immagine

    • Nella scheda Variabili e secret, fai clic su Aggiungi variabile e incolla i contenuti del file .env nel campo Nome. Cloud Run compila automaticamente il campo Valore e crea nuove variabili per ogni coppia chiave-valore definita nel file .env.
  5. Fai clic su Crea o Esegui il deployment.

gcloud

Per specificare più variabili di ambiente dal file .env, esegui questo comando:

gcloud beta run worker-pools deploy WORKER_POOL --image IMAGE_URL --env-vars-file=ENV_FILE_PATH

Sostituisci quanto segue:

  • WORKER_POOL: il nome del pool di worker.
  • IMAGE_URL: un riferimento all'immagine del container che contiene il pool di worker, ad esempio us-docker.pkg.dev/cloudrun/container/worker-pool:latest
  • ENV_FILE_PATH: percorso del file .env.

Imposta più variabili di ambiente utilizzando il flag --set-env-vars

Se hai più variabili di ambiente che non possono essere elencate nel formato KEY1=VALUE1,KEY2=VALUE2, puoi ripetere il flag --set-env-vars più volte:
   [...]
   --set-env-vars "KEY1=VALUE1" \
   --set-env-vars "KEY2=VALUE2" \
   --set-env-vars "KEY3=VALUE3"

Caratteri virgola di escape

Poiché il carattere virgola , viene utilizzato per dividere le variabili di ambiente, se la variabile di ambiente contiene virgole come valori, devi eseguire l'escape di questi delimitatori specificando un carattere delimitatore diverso, ad esempio @:
--set-env-vars "^@^KEY1=value1,value2,value3@KEY2=..."

Aggiorna le variabili di ambiente

Puoi aggiornare le variabili di ambiente di runtime per i pool di worker esistenti. Si tratta di un approccio non distruttivo che modifica o aggiunge variabili di ambiente di runtime, ma non le elimina.

Puoi aggiornare le variabili di ambiente nella console Google Cloud , in Google Cloud CLI o in Terraform:

Console

  1. Nella console Google Cloud , vai a Cloud Run:

    Vai a Cloud Run

  2. Seleziona Pool di worker dal menu e fai clic sul pool di worker che stai aggiornando, poi fai clic su Modifica ed esegui il deployment della nuova revisione.

  3. Fai clic su Container, volumi, networking, sicurezza per espandere la pagina di configurazione dei pool di worker.

  4. Fai clic sulla scheda Variabili e secret.

    immagine

  5. Individua la variabile di ambiente che vuoi aggiornare, quindi specifica un nome diverso per la variabile o un valore diverso nei campi Nome e Valore.

  6. Fai clic su Esegui il deployment.

gcloud

Per aggiornare le variabili di ambiente di un pool di worker esistente, utilizza il flag --update-env-vars:

gcloud beta run worker-pools update WORKER_POOL --update-env-vars KEY1=VALUE1,KEY2=VALUE2

Sostituisci quanto segue:

  • WORKER_POOL: il nome del pool di worker
  • KEY1=VALUE1,KEY2=VALUE2: l'elenco separato da virgole di nomi e valori delle variabili

Terraform

Per aggiornare le variabili di ambiente di un pool di worker esistente, apri il file main.tf corrispondente al pool di worker e modifica le variabili nome e valore. Poi, esegui il comando per applicare la configurazione Terraform.

Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base.

Elimina variabili di ambiente

Console

  1. Nella console Google Cloud , vai a Cloud Run:

    Vai a Cloud Run

  2. Seleziona Pool di worker dal menu e fai clic sul pool di worker che stai aggiornando, poi fai clic su Modifica ed esegui il deployment della nuova revisione.

  3. Fai clic su Container, volumi, networking, sicurezza per espandere la pagina di configurazione dei pool di worker.

  4. Fai clic sulla scheda Variabili e secret.

    immagine

  5. Individua la variabile di ambiente che vuoi eliminare e fai clic sull'icona del cestino a destra del campo Valore per eliminarla.

  6. Fai clic su Esegui il deployment.

gcloud

Per rimuovere selettivamente le variabili di ambiente da un worker pool esistente, utilizza il flag --remove-env-vars:

gcloud beta run worker-pools update WORKER_POOL --remove-env-vars KEY1,KEY2

Sostituisci quanto segue:

  • WORKER_POOL: il nome del pool di worker
  • KEY1,KEY2: l'elenco separato da virgole dei nomi delle variabili

In alternativa, cancella tutte le variabili di ambiente impostate in precedenza con il flag --clear-env-vars:

gcloud beta run worker-pools update WORKER_POOL --clear-env-vars

Sostituisci WORKER_POOL con il nome del tuo pool di worker.

Visualizza la configurazione variabile di ambiente per il worker pool

  1. Nella console Google Cloud , vai a Cloud Run:

    Vai a Cloud Run

  2. Fai clic su Pool di worker per visualizzare l'elenco dei pool di worker di cui è stato eseguito il deployment.

  3. Fai clic sul worker pool che vuoi esaminare per visualizzare il relativo riquadro dei dettagli.

  4. Fai clic sulla scheda Container per visualizzare la configurazione dei container del pool di worker.

Codice di esempio

Per un esempio di codice che mostra come accedere alle variabili di ambiente nel codice, fai riferimento a Gestione della configurazione sensibile con Secret Manager nel tutorial sull'autenticazione dell'utente finale.

Passaggi successivi

Puoi utilizzare le variabili di ambiente per impostare una configurazione di buildpack. Per dettagli specifici della lingua, consulta la documentazione dei buildpack per: