Le variabili di ambiente di build sono coppie chiave-valore che ti consentono di passare le informazioni di configurazione ai buildpack durante il deployment dal codice sorgente. Ad esempio, in fase di compilazione, potresti voler personalizzare le opzioni del compilatore, specificare i certificati di compilazione, configurare i parametri e così via.
Questa pagina mostra come impostare le variabili di ambiente di compilazione disponibili al momento della compilazione ed è pertinente per gli sviluppatori di piattaforme che eseguono il deployment di servizi o funzioni Cloud Run dal codice sorgente. I flag dell'interfaccia a riga di comando gcloud per le variabili dell'ambiente di compilazione sono supportati per i deployment di origine (--source
) e non per i deployment di immagini contenitore (--image
).
Prima di iniziare
Abilita l'API Cloud Run Admin e l'API Cloud Build:
gcloud services enable run.googleapis.com \ cloudbuild.googleapis.com
Dopo aver attivato l'API Cloud Run Admin, l'account di servizio predefinito di Compute Engine viene creato automaticamente.
Ruoli obbligatori
Tu o il tuo amministratore dovete concedere all'account di deployment e all'account di servizio Cloud Build i seguenti ruoli IAM.
Fai clic per visualizzare i ruoli richiesti per l'account di deployment
Per ottenere le autorizzazioni necessarie per compilare ed eseguire il deployment dal codice sorgente, chiedi all'amministratore di concederti i seguenti ruoli IAM:
- Cloud Run Source Developer (
roles/run.sourceDeveloper
) nel tuo progetto - Utente account di servizio (
roles/iam.serviceAccountUser
) nell'identità servizio Cloud Run
Fai clic per visualizzare i ruoli richiesti per l'account di servizio Cloud Build
Cloud Build utilizza automaticamente l'account di servizio predefinito di Compute Engine come account di servizio Cloud Build predefinito per compilare il codice sorgente e la risorsa Cloud Run, a meno che tu non sostituisca questo comportamento. Affinché Cloud Build possa compilare le sorgenti, chiedi all'amministratore di concedere il ruolo Cloud Run Builder (roles/run.builder
) all'account di servizio predefinito di Compute Engine nel tuo progetto:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:PROJECT_NUMBER-compute@developer.gserviceaccount.com \ --role=roles/run.builder
Sostituisci PROJECT_NUMBER
con il numero Google Cloud
del progetto e PROJECT_ID
con l'ID Google Cloud
del progetto. Per istruzioni dettagliate su come trovare l'ID progetto e il numero del progetto, consulta Creazione e gestione dei progetti.
La propagazione del ruolo del compilatore Cloud Run all'account di servizio predefinito di Compute Engine richiede un paio di minuti.
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 servizio Cloud Run interagisce conGoogle Cloud API, come le librerie client di Cloud, consulta la guida alla configurazione dell'identità di servizio. Per ulteriori informazioni sulla concessione dei ruoli, consulta le autorizzazioni di deployment e gestisci l'accesso.
Imposta le variabili di ambiente di compilazione
Puoi impostare le variabili di ambiente di compilazione per stabilire nuove variabili o sostituire completamente quelle esistenti.
gcloud
Per impostare le variabili di ambiente di compilazione durante il deployment di un servizio dal codice sorgente, utilizza il flag --set-build-env-vars
:
gcloud beta run deploy SERVICE \ --source . \ --set-build-env-vars KEY1=VALUE1,KEY2=VALUE2
Sostituisci:
- SERVICE con il nome del servizio Cloud Run.
- KEY1=VALUE1,KEY2=VALUE2 con l'elenco separato da virgole di nomi di variabili e relativi valori di cui viene eseguito il deployment insieme a una funzione che consente di passare le informazioni di configurazione ai buildpack.
Se stai eseguendo il deployment di una funzione, aggiungi il flag --function
con il punto di ingresso della funzione dal codice sorgente.
Aggiorna le variabili di ambiente di build
Puoi aggiornare le variabili di ambiente di compilazione per i servizi esistenti. Si tratta di un approccio non distruttivo che modifica o aggiunge le variabili di ambiente di compilazione, ma non le elimina.
gcloud
Per aggiornare le variabili di ambiente di compilazione per i servizi esistenti, utilizza il flag --update-build-env-vars
:
gcloud beta run deploy SERVICE \ --source . \ --update-build-env-vars KEY1=VALUE1,KEY2=VALUE2
Se stai eseguendo il deployment di una funzione, aggiungi il flag --function
con il punto di ingresso della funzione dal codice sorgente.
Eliminare le variabili di ambiente di build
Puoi eliminare le variabili di ambiente di compilazione per i servizi esistenti.
gcloud
Per rimuovere le variabili di ambiente di compilazione per i servizi esistenti, utilizza il flag --remove-build-env-vars
:
gcloud beta run deploy SERVICE \ --source . \ --remove-build-env-vars KEY1=VALUE1,KEY2=VALUE2
In alternativa, puoi cancellare le variabili di ambiente di compilazione utilizzando --clear-build-env-vars
per i servizi esistenti:
gcloud beta run deploy SERVICE \ --source . \ --clear-build-env-vars KEY1=VALUE1,KEY2=VALUE2
Se stai eseguendo il deployment di una funzione, aggiungi il flag --function
con il punto di ingresso della funzione dal codice sorgente.
Utilizzare un file di variabili di ambiente di compilazione
Puoi utilizzare un file di variabili di ambiente di compilazione per le funzioni esistenti.
gcloud
Per impostare le variabili di ambiente di compilazione da un file, utilizza il
--build-env-vars-file
flag:
gcloud beta run deploy SERVICE \ --source . \ --build-env-vars-file FILE_NAME.yaml
Sostituisci FILE_NAME.yaml con i contenuti del file, che devono avere il seguente aspetto:
KEY1: VALUE1
KEY2: VALUE2
Se stai eseguendo il deployment di una funzione, aggiungi il flag --function
con il punto di ingresso della funzione dal codice sorgente.