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. Le revisioni successive riceveranno automaticamente anche questa impostazione di configurazione, a meno che tu non apporti aggiornamenti espliciti per modificarla.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per configurare ed eseguire il deployment dei 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 di Cloud Run e Autorizzazioni IAM di Cloud Run. Se il pool di worker Cloud Run interagisce con Google Cloud API, come le librerie client Cloud, consulta la guida alla configurazione dell'identità del servizio. Per saperne di più sulla concessione dei ruoli, consulta Autorizzazioni di deployment e Gestisci l'accesso.

Imposta le variabili di ambiente

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

Console

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

    Vai a Cloud Run

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

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

  4. Fai clic sulla scheda Container.

    immagine

    • Nella scheda Variabili e secret, 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 saperne di più su come impostare più variabili di ambiente o utilizzare i caratteri speciali di escape, consulta 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 --set-env-vars flag:

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 container che contiene il pool di worker, ad esempio us-docker.pkg.dev/cloudrun/container/worker-pool:latest

Per saperne di più su come impostare più variabili di ambiente o utilizzare i caratteri speciali di escape, consulta Impostare più variabili di ambiente.

YAML

  1. Se stai creando un nuovo pool di worker, salta questo passaggio. Se stai aggiornando un pool di worker esistente, scarica la relativa configurazione YAML:

    gcloud beta run worker-pools describe WORKER_POOL --format export > workerpool.yaml
  2. L'esempio seguente contiene la configurazione YAML:

    apiVersion: run.googleapis.com/v1
    kind: WorkerPool
    metadata:
      name: WORKER_POOL
      annotations:
        run.googleapis.com/launch-stage: BETA
    spec:
      template:
        spec:
          containers:
          - name:
            image: IMAGE_URL
            env:
            - name: NAME
              value: VALUE
            - name: NAME2
              value: VALUE2

    Sostituisci quanto segue:

    • WORKER_POOL: il nome del pool di worker Cloud Run.
    • IMAGE_URL: un riferimento all'immagine container che contiene il pool di worker, ad esempio us-docker.pkg.dev/cloudrun/container/worker-pool:latest
    • NAME e VALUE: il nome e i valori delle variabili di ambiente.
  3. Crea o aggiorna il pool di worker utilizzando il seguente comando:

    gcloud beta run worker-pools replace workerpool.yaml

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 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 valore. Facoltativamente, aggiungi altre variabili e valori in base alle esigenze.

Imposta le variabili di ambiente predefinite nel container

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

ENV KEY1=VALUE1,KEY2=VALUE2

Ordine di precedenza: variabili del container rispetto a quelle del pool di worker

Se imposti una variabile di ambiente predefinita nel container e anche imposti 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.

Imposta più variabili di ambiente utilizzando il file .env

Console

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

    Vai a Cloud Run

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

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

  4. Fai clic sulla scheda Container.

    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 il seguente 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 container che contiene il pool di worker, ad esempio us-docker.pkg.dev/cloudrun/container/worker-pool:latest
  • ENV_FILE_PATH: il 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"

Utilizza i caratteri speciali di escape per le virgole

Poiché la virgola , viene utilizzata per dividere le variabili di ambiente, se la variabile di ambiente contiene virgole come valori, devi utilizzare i caratteri speciali di escape per 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 runtime per i pool di worker esistenti. Si tratta di un approccio non distruttivo che modifica o aggiunge variabili di ambiente runtime, ma non le elimina.

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

Console

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

    Vai a Cloud Run

  2. Seleziona Pool di worker dal menu, fai clic sul pool di worker che stai aggiornando, quindi fai clic su Modifica ed esegui il deployment di una 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 --update-env-vars flag:

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

YAML

  1. Scarica la configurazione YAML del pool di worker:

    gcloud beta run worker-pools describe WORKER_POOL --format export > workerpool.yaml
  2. Modifica le variabili name e value.

  3. Aggiorna il pool di worker utilizzando il seguente comando:

    gcloud beta run worker-pools replace workerpool.yaml

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 name e value. Quindi, esegui il comando per applicare la configurazione Terraform.

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

Elimina le variabili di ambiente

Console

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

    Vai a Cloud Run

  2. Seleziona Pool di worker dal menu, fai clic sul pool di worker che stai aggiornando, quindi fai clic su Modifica ed esegui il deployment di una 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 eliminare la variabile di ambiente.

  6. Fai clic su Esegui il deployment.

gcloud

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

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 di nomi delle variabili

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

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

Sostituisci WORKER_POOL con il nome del pool di worker.

Visualizza la configurazione variabile di ambiente per il pool di worker

  1. Nella Google Cloud console, 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 pool di worker che vuoi esaminare per visualizzarne il riquadro dei dettagli.

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

Codice campione

Per un esempio di codice che mostra come accedere alle variabili di ambiente nel codice, consulta Gestire la configurazione sensibile con Secret Manager nel tutorial Autenticazione dell'utente finale.

Passaggi successivi

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