Build-Umgebungsvariablen sind Schlüssel/Wert-Paare, mit denen Sie Konfigurationsinformationen an Buildpacks übergeben können, wenn Sie aus Quellcode bereitstellen. So können Sie beispielsweise zum Zeitpunkt des Builds Compiler-Optionen anpassen, Buildzeit-Zertifikate angeben, Parameter konfigurieren usw.
Auf dieser Seite wird beschrieben, wie Sie Umgebungsvariablen für den Build festlegen, die zur Build-Zeit verfügbar sind. Dies ist für Plattformentwickler relevant, die Cloud Run-Dienste oder Funktionen aus dem Quellcode bereitstellen. Die Build-Umgebungsvariablen für gcloud CLI-Flags werden für Quellcodebereitstellungen (--source
) unterstützt, nicht aber für Container-Image-Bereitstellungen (--image
).
Umgebungsvariablen können zur Dienst- oder Funktionskonfiguration verwendet werden. Zum Speichern von Secrets wie Datenbankanmeldedaten oder API-Schlüsseln werden sie jedoch nicht empfohlen. Speichern Sie vertrauliche Werte weder im Quellcode noch in Umgebungsvariablen. Wir empfehlen die Verwendung von Secret Manager zum Speichern von Secrets. Informationen zum Konfigurieren von Diensten, die auf in Secret Manager gespeicherte Secrets zugreifen, finden Sie unter Secrets konfigurieren.
Hinweise
-
Enable the Cloud Run Admin API and Cloud Build APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles.Nachdem die Cloud Run Admin API aktiviert wurde, wird das Compute Engine-Standarddienstkonto automatisch erstellt.
Erforderliche Rollen
Sie oder Ihr Administrator müssen dem Bereitstellerkonto und dem Cloud Build-Dienstkonto die folgenden IAM-Rollen zuweisen.
Klicken, um die erforderlichen Rollen für das Bereitstellerkonto aufzurufen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen und Bereitstellen aus der Quelle benötigen:
- Cloud Run Source Developer (
roles/run.sourceDeveloper
) für Ihr Projekt - Service Usage Consumer (
roles/serviceusage.serviceUsageConsumer
) für Ihr Projekt - Rolle Dienstkontonutzer (
roles/iam.serviceAccountUser
) für die Cloud Run-Dienstidentität
Klicken, um die erforderlichen Rollen für das Cloud Build-Dienstkonto aufzurufen
Cloud Build verwendet automatisch das Compute Engine-Standarddienstkonto als Standard-Cloud Build-Dienstkonto zum Erstellen Ihres Quellcodes und Ihrer Cloud Run-Ressource, sofern Sie dieses Verhalten nicht überschreiben. Damit Cloud Build Ihre Quellen erstellen kann, bitten Sie Ihren Administrator, dem Compute Engine-Standarddienstkonto in Ihrem Projekt die Rolle Cloud Run Builder (roles/run.builder
) zuzuweisen:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:PROJECT_NUMBER-compute@developer.gserviceaccount.com \ --role=roles/run.builder
Ersetzen Sie PROJECT_NUMBER
durch die Google Cloud
Projektnummer und PROJECT_ID
durch die Google Cloud
Projekt-ID. Eine detaillierte Anleitung zum Ermitteln der Projekt-ID und der Projektnummer finden Sie unter Projekte erstellen und verwalten.
Es dauert einige Minuten, bis die Zuweisung der Rolle „Cloud Run-Builder“ für das Compute Engine-Standarddienstkonto übertragen wurde.
Eine Liste der IAM-Rollen und -Berechtigungen im Zusammenhang mit Cloud Run finden Sie unter IAM-Rollen für Cloud Run und IAM-Berechtigungen für Cloud Run. Wenn Ihr Cloud Run-Dienst mitGoogle Cloud -APIs wie Cloud-Clientbibliotheken verknüpft ist, lesen Sie die Konfigurationsanleitung für Dienstidentitäten. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Bereitstellungsberechtigungen und Zugriff verwalten.
Maximale Anzahl von Build-Umgebungsvariablen und Limits
Sie können bis zu 100 Build-Umgebungsvariablen definieren, wobei die Gesamtgröße von Schlüssel und Wert auf 64 KiB begrenzt ist.
Build-Umgebungsvariablen festlegen
Sie können Build-Umgebungsvariablen festlegen, um neue Variablen einzurichten oder vorhandene Build-Variablen komplett zu ersetzen.
gcloud
Verwenden Sie das Flag --set-build-env-vars
, um Build-Umgebungsvariablen festzulegen, wenn Sie einen Dienst aus Quellcode bereitstellen:
gcloud run deploy SERVICE \ --source . \ --set-build-env-vars KEY1=VALUE1,KEY2=VALUE2
Ersetzen Sie:
- SERVICE durch den Namen Ihres Cloud Run-Dienstes.
- KEY1=VALUE1,KEY2=VALUE2 durch die durch Kommas getrennte Liste der Variablennamen und ihrer Werte, die zusammen mit einer Funktion bereitgestellt werden und es Ihnen ermöglichen, Konfigurationsinformationen an Buildpacks zu übergeben.
Wenn Sie eine Funktion bereitstellen, fügen Sie das Flag --function
mit dem Funktionseinstiegspunkt aus Ihrem Quellcode hinzu.
Build-Umgebungsvariablen aktualisieren
Sie können Build-Umgebungsvariablen für vorhandene Dienste aktualisieren. Bei diesem nicht destruktiven Ansatz werden Build-Umgebungsvariablen geändert oder hinzugefügt, jedoch nicht gelöscht.
gcloud
Verwenden Sie zum Aktualisieren von Build-Umgebungsvariablen für vorhandene Dienste das Flag --update-build-env-vars
:
gcloud run deploy SERVICE \ --source . \ --update-build-env-vars KEY1=VALUE1,KEY2=VALUE2
Wenn Sie eine Funktion bereitstellen, fügen Sie das Flag --function
mit dem Funktionseinstiegspunkt aus Ihrem Quellcode hinzu.
Build-Umgebungsvariablen löschen
Sie können Build-Umgebungsvariablen für vorhandene Dienste löschen.
gcloud
Verwenden Sie zum Entfernen von Build-Umgebungsvariablen für vorhandene Dienste das Flag --remove-build-env-vars
:
gcloud run deploy SERVICE \ --source . \ --remove-build-env-vars KEY1=VALUE1,KEY2=VALUE2
Alternativ können Sie Build-Umgebungsvariablen mit dem Flag --clear-build-env-vars
für vorhandene Dienste löschen:
gcloud run deploy SERVICE \ --source . \ --clear-build-env-vars KEY1=VALUE1,KEY2=VALUE2
Wenn Sie eine Funktion bereitstellen, fügen Sie das Flag --function
mit dem Funktionseinstiegspunkt aus Ihrem Quellcode hinzu.
Datei mit Build-Umgebungsvariablen verwenden
Sie können eine Datei mit Build-Umgebungsvariablen für vorhandene Funktionen verwenden.
gcloud
Verwenden Sie das Flag --build-env-vars-file
, um Build-Umgebungsvariablen aus einer Datei festzulegen:
gcloud run deploy SERVICE \ --source . \ --build-env-vars-file FILE_NAME.yaml
Ersetzen Sie FILE_NAME.yaml durch den Inhalt der Datei, der so aussehen sollte:
KEY1: VALUE1
KEY2: VALUE2
Wenn Sie eine Funktion bereitstellen, fügen Sie das Flag --function
mit dem Funktionseinstiegspunkt aus Ihrem Quellcode hinzu.