Configura le variabili di ambiente

Le variabili di ambiente impostate vengono inserite nel container e sono accessibili al codice. Le variabili di ambiente vengono impostate come coppie chiave/valore.

Nomi riservati

Le variabili di ambiente definite nel contratto di runtime del container sono riservate e non possono essere impostate. In particolare, la variabile di ambiente PORT viene inserita all'interno del container da Cloud Run. Non dovresti impostarli da te.

Ruoli obbligatori

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

Per un elenco dei ruoli e delle autorizzazioni IAM associati a Cloud Run, consulta Ruoli IAM di Cloud Run e Autorizzazioni IAM di Cloud Run. Se il job Cloud Run si interfaccia con le API Google Cloud, ad esempio le librerie client di 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

Per impostare una variabile di ambiente per un job Cloud Run:

Console

  1. Nella console Google Cloud, vai alla pagina dei job Cloud Run:

    Vai a Cloud Run

  2. Se stai configurando un nuovo job, fai clic sulla scheda Job e compila la pagina iniziale delle impostazioni del job come preferisci. Se stai configurando un job esistente, fai clic sul job e poi su Modifica.

  3. Fai clic su Contenitore, variabili e secret, connessioni, sicurezza per espandere la pagina delle proprietà del job.

  4. Fai clic sulla scheda Variabili.

    immagine

    • Procedi nel seguente modo:
      • Se aggiungi una variabile, fai clic su Aggiungi variabile e specifica il nome per la variabile e il relativo valore nelle caselle di testo Nome e Valore.
      • Se modifichi il valore di una variabile, sostituisci il valore corrente nella casella di testo Valore con quello desiderato.
      • Se stai rimuovendo una o più variabili di ambiente, passa il cursore a sinistra della casella di testo Valore della variabile che stai rimuovendo per visualizzare l'icona del Cestino e fai clic sulla variabile.
  5. Fai clic su Crea o Aggiorna.

gcloud

Imposta, aggiorna o rimuovi le variabili di ambiente di un servizio esistente utilizzando il comando gcloud run job update. Se necessario, puoi utilizzare uno qualsiasi dei seguenti flag:

  • --set-env-vars
  • --update-env-vars
  • --remove-env-vars
  • --clear-env-vars

    Puoi specificare le variabili di ambiente durante la creazione di un job o durante l'aggiornamento di un job:

    gcloud run jobs create JOB_NAME --image IMAGE_URL --update-env-vars KEY1=VALUE1,KEY2=VALUE2
    
    gcloud run jobs update JOB_NAME --update-env-vars KEY1=VALUE1,KEY2=VALUE2
  • Sostituisci JOB_NAME con il nome del tuo job.

  • Sostituisci KEY1=VALUE1,KEY2=VALUE2 con l'elenco separato da virgole dei nomi delle variabili desiderati e i relativi valori.

  • Sostituisci IMAGE_URL con un riferimento all'immagine container, ad esempio us-docker.pkg.dev/cloudrun/container/job:latest.

YAML

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

    gcloud run jobs describe JOB_NAME --format export > job.yaml
    1. Aggiorna gli attributi name e value in env come mostrato in containers::
    apiVersion: run.googleapis.com/v1
    kind: Job
    metadata:
      name: JOB
    spec:
      template:
        spec:
          template:
            spec:
              containers:
              - image: IMAGE
                env:
                - name: KEY-1
                  value: VALUE-1
                - name: KEY-N
                  value: VALUE-N

    Sostituisci KEY-1, VALUE-1 con la variabile di ambiente e il valore. Se vuoi, aggiungi altre variabili e valori.

    Puoi anche specificare ulteriori configurazioni, come le variabili di ambiente o i limiti di memoria.

  2. Aggiorna la configurazione del job esistente:

    gcloud run jobs replace job.yaml

Imposta molte variabili di ambiente

Se hai troppe variabili di ambiente che non possono essere facilmente elencate nel formato KEY1=VALUE1,KEY2=VALUE2, in alternativa puoi ripetere più volte i flag elencati sopra:

   [...]
   --set-env-vars "KEY1=VALUE1" \
   --set-env-vars "KEY2=VALUE2" \
   --set-env-vars "KEY3=VALUE3"

Virgolette di escape

Poiché la virgola , viene utilizzata per suddividere le variabili di ambiente, se la variabile di ambiente contiene caratteri di virgola come valori, devi eseguire l'escape di questi delimitatori specificando un carattere di delimitatore diverso, ad esempio @:

--set-env-vars "^@^KEY1=value1,value2,value3@KEY2=..."

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 di container e di servizio o di job

Se imposti una variabile di ambiente predefinita nel container e imposti anche una variabile di ambiente con lo stesso nome nel servizio o nel job Cloud Run, avrà la precedenza il valore impostato nel servizio.

Visualizza le impostazioni delle variabili di ambiente

Per visualizzare le impostazioni attuali delle variabili di ambiente per il tuo job Cloud Run:

Console

  1. Nella console Google Cloud, vai alla pagina dei job Cloud Run:

    Vai ai job Cloud Run

  2. Fai clic sul lavoro che ti interessa per aprire la pagina Dettagli offerta di lavoro.

  3. Fai clic sulla scheda Configuration (Configurazione).

  4. Individua l'impostazione delle variabili di ambiente nei dettagli della configurazione.

gcloud

  1. Utilizza questo comando:

    gcloud run jobs describe JOB_NAME
  2. Individua l'impostazione delle variabili di ambiente nella configurazione restituita.