Quando imposti le variabili di ambiente, queste vengono iniettate nel contenitore e sono accessibili al tuo codice. Le variabili di ambiente sono impostate come coppie chiave/valore.
Nomi riservati
Le variabili di ambiente definite nel
contratto di runtime del container
sono riservati e non possono essere impostati. In particolare, la variabile di ambiente PORT
viene inserito all'interno del container da Cloud Run. Non devi impostarlo
da solo.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per configurare i job Cloud Run, chiedi all'amministratore di concederti seguenti ruoli IAM:
-
Cloud Run Developer (
roles/run.developer
) nel job Cloud Run -
Utente account di servizio (
roles/iam.serviceAccountUser
) nell'identità del servizio
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 tuo job Cloud Run si interfaccia con le API Google Cloud, come le librerie client Cloud, consulta la guida alla configurazione dell'identità del servizio. Per saperne di più sulla concessione dei ruoli, consulta le autorizzazioni di deployment e gestisci l'accesso.
Imposta le variabili di ambiente
Per impostare una variabile di ambiente per un job Cloud Run:
Console
Nella console Google Cloud, vai alla pagina dei job Cloud Run:
Fai clic su Esegui il deployment del container e seleziona Job per compilare il job iniziale. nella pagina delle impostazioni. Se stai configurando un job esistente, selezionalo e fai clic su Modifica.
Fai clic su Contenitore, variabili e secret, connessioni, sicurezza per espandere la pagina delle proprietà del job.
Fai clic sulla scheda Variabili.
- Procedi nel seguente modo:
- Se aggiungi una variabile, fai clic su Aggiungi variabile e specifica la il nome che preferisci per la variabile e il relativo valore nelle caselle di testo Nome e Valore.
- Se stai modificando un valore per una variabile, sostituisci il valore corrente nella casella di testo Valore con quello che preferisci.
- Se stai rimuovendo una o più variabili di ambiente, passa il cursore del mouse a sinistra della casella di testo Valore della variabile che stai rimuovendo per visualizzare l'icona Cestino e fai clic.
- Procedi nel seguente modo:
Fai clic su Crea o Aggiorna.
gcloud
Imposta, aggiorna o rimuovi le variabili di ambiente di un servizio esistente utilizzando il comando gcloud run jobs update. Se necessario, puoi utilizzare uno qualsiasi dei seguenti flag:
- --set-env-vars
- --update-env-vars
- --remove-env-vars
-
Puoi specificare le variabili di ambiente creazione di un lavoro o quando aggiornando 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 desiderate e dei relativi valori.
Sostituisci IMAGE_URL con un riferimento all'immagine container, per ad esempio
us-docker.pkg.dev/cloudrun/container/job:latest
.
YAML
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
- Aggiorna gli attributi
name
evalue
inenv
come mostrato incontainers:
:
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 variabili di ambiente o limiti di memoria.
- Aggiorna gli attributi
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 elencate facilmente in
Formato KEY1=VALUE1,KEY2=VALUE2
, in alternativa puoi ripetere i flag
elencate sopra più volte:
[...] --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 virgole come valori, devi
eseguire l'escape dei delimitatori per
specificando un carattere di delimitatore diverso, ad esempio @
:
--set-env-vars "^@^KEY1=value1,value2,value3@KEY2=..."
Imposta le variabili di ambiente predefinite nel contenitore
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 contenitore rispetto a quelle del servizio o del job
Se imposti una variabile di ambiente predefinita nel contenitore e anche imposti una variabile di ambiente con lo stesso nome sul servizio o sul job Cloud Run, il valore impostato sul servizio ha prioritaria.
Visualizza le impostazioni delle variabili di ambiente
Per visualizzare le impostazioni attuali delle variabili di ambiente per Job Cloud Run:
Console
Nella console Google Cloud, vai alla pagina dei job Cloud Run:
Fai clic sul lavoro che ti interessa per aprire la pagina Dettagli offerta di lavoro.
Fai clic sulla scheda Configuration (Configurazione).
Individua l'impostazione delle variabili di ambiente nei dettagli della configurazione.
gcloud
Utilizza il seguente comando:
gcloud run jobs describe JOB_NAME
Individua l'impostazione delle variabili di ambiente nella configurazione restituita.