In dieser Anleitung erhalten Sie einen einführenden Überblick darüber, wie andere Google Cloud Dienste in den Bereitstellungsprozess von Cloud Run Functions eingebunden sind.
Hinweise
Machen Sie sich mit den Konzepten für Cloud Run Functions und die Quellbereitstellung aus dem Leitfaden Cloud Run-Bereitstellungsoptionen und Ressourcenmodell vertraut.
Architektur
Wenn Sie den Quellcode Ihrer Funktion in Cloud Run Functions bereitstellen, wird dieser Quellcode in einem Cloud Storage-Bucket gespeichert. Cloud Build erstellt dann automatisch Ihren Code in einem Container-Image und überträgt dieses Image per Push in eine Artifact Registry-Image-Registry. Cloud Run Functions greift auf dieses Image zu, wenn es zum Ausführen der Funktion den Container ausführen muss.
Im folgenden Diagramm steht das Feld „Cloud Run Functions“ für eine Funktion, die in Cloud Run bereitgestellt wird, entweder über die Cloud Run Admin API oder die Cloud Functions API. In der Regel werden neuere Funktionen mit der Cloud Run Admin API und ältere Funktionen mit der Cloud Functions API bereitgestellt.
Je nachdem, welche API beim Bereitstellen einer Funktion verwendet wird, passiert Folgendes:
Wenn Sie Ihre Funktion mit der Cloud Run Admin API bereitgestellt haben, gilt Folgendes:
Ihr Quellcode wird in einen Cloud Storage-Bucket ohne Aufbewahrungszeitraum hochgeladen.
- Wenn Sie die Standardverschlüsselung verwenden, wird der Name des Buckets automatisch generiert und lautet
run-sources-PROJECT_ID-REGION
. - Wenn Sie Ihre Daten mit vom Kunden verwalteten Verschlüsselungsschlüsseln (Customer-Managed Encryption Keys, CMEK) schützen, wird der Bucket-Name nicht automatisch generiert. Sie müssen einen Bucket-Namen angeben.
- Wenn Sie die Standardverschlüsselung verwenden, wird der Name des Buckets automatisch generiert und lautet
Der Quellcode wird an Cloud Build gesendet, wo mit den Buildpacks von Google Cloud und dem Functions Framework ein Container-Image erstellt wird. Das Container-Image wird vom Cloud Build-Dienstkonto erstellt. Cloud Run verwendet standardmäßig den von Cloud Build bereitgestellten Maschinentyp
e2-standard-2
.Ihr Container-Image wird dann über einen automatisch erstellten Bucket namens
REGION-docker.pkg.dev/PROJECT_ID/cloud-run-source-deploy
in Artifact Registry hochgeladen.Das Image wird als Dienst in Cloud Run bereitgestellt.
Sie können die Funktion mit Eventarc, Pub/Sub oder anderen HTTP-Triggern auslösen oder aufrufen.
Wenn Sie Ihre Funktion mit der Cloud Functions API (v2) bereitgestellt haben, gilt Folgendes:
Ihr Quellcode wird in einen Cloud Storage-Bucket ohne Aufbewahrungszeitraum hochgeladen.
Der Name des Buckets wird automatisch generiert und hat folgendes Format:
- Wenn Sie die Standardverschlüsselung verwenden, heißt dieser Bucket
gcf-v2-sources-PROJECT_NUMBER-REGION
. - Wenn Sie Ihre Daten mit CMEK schützen, heißt der Bucket
gcf-sources-PROJECT_NUMBER-REGION-CMEK_KEY_HASH
.
- Wenn Sie die Standardverschlüsselung verwenden, heißt dieser Bucket
Der Quellcode wird an Cloud Build gesendet, wo mit den Buildpacks von Google Cloud und dem Functions Framework ein Container-Image erstellt wird. Das Container-Image wird vom Cloud Build-Dienstkonto erstellt. Cloud Run verwendet standardmäßig den von Cloud Build bereitgestellten Maschinentyp
e2-standard-2
.Ihr Container-Image wird dann über einen automatisch erstellten Bucket namens
REGION-docker.pkg.dev/PROJECT_ID/gcf-artifacts
in Artifact Registry hochgeladen.Das Image wird als Dienst in Cloud Run bereitgestellt.
Sie können die Funktion mit Eventarc, Pub/Sub oder anderen HTTP-Triggern auslösen oder aufrufen.
Nächste Schritte
- Weitere Informationen zu den verschiedenen Funktionstypen und den Optionen zum Auslösen von Funktionen
- Wenn Sie zuvor Funktionen mit der Cloud Functions API erstellt haben, finden Sie im Vergleichsleitfaden für Cloud Run Functions Informationen zu den Unterschieden zwischen den beiden Versionen von Cloud Run Functions.