Auf dieser Seite wird beschrieben, wie Sie einzeln adressierbare, Singleton Cloud Run-Instanzen erstellen und verwalten. Im Gegensatz zu Cloud Run-Diensten, die je nach eingehendem Traffic skaliert werden, ist eine Instanz ein dedizierter Compute-Container, den Sie manuell über Lebenszyklusübergänge verwalten (erstellen, beenden, starten, aktualisieren, löschen).
Unterstützte Regionen
Sie können in allen von Cloud Run unterstützten Regionen Cloud Run-Instanzen erstellen. Die folgenden Regionen mit hoher Latenz werden nicht unterstützt:
us-central1us-east1europe-west1
Hinweis
Richten Sie ein neues Projekt für Cloud Run ein, wie auf der Einrichtung Seite beschrieben.
Aktivieren Sie die Cloud Run Admin API:
gcloud services enable run.googleapis.comAktualisieren Sie die
gcloud-Komponenten auf die neueste Version:gcloud components update
Wenn Sie einer Domaineinschränkung zur Organisation nicht eingeschränkter Aufrufe für Ihr Projekt unterliegen, müssen Sie auf Ihren bereitgestellten Dienst zugreifen, wie unter Private Dienste testen beschrieben.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Konfigurieren und Bereitstellen von Cloud Run-Instanzen benötigen:
- Rolle Cloud Run-Entwickler (
roles/run.developer) für die Cloud Run-Instanz - Dienstkontonutzer (
roles/iam.serviceAccountUser) für die Dienstidentität
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 Ihre Cloud Run-Instanz mit Google 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.
Instanz erstellen
Sie können ein Container-Image bereitstellen, um eine neue Instanz zu erstellen. Wenn Sie keinen Namen angeben, wird automatisch einer generiert.
gcloud
So erstellen Sie eine neue Cloud Run-Instanz mit dem Befehl gcloud beta run instances create:
gcloud beta run instances create INSTANCE_NAME \ --image IMAGE_URL \ --region REGION
So erstellen Sie eine neue Cloud Run-Instanz mit dem Befehl gcloud beta run instances deploy:
gcloud beta run instances deploy INSTANCE_NAME \ --image IMAGE_URL \ --region REGION
Ersetzen Sie Folgendes:
INSTANCE_NAME: der Name der Instanz, die Sie erstellen. Der Instanzname muss innerhalb Ihres Projekts und Ihrer Region eindeutig sein. Sie können keine Instanz mit demselben Namen wie eine vorhandene Cloud Run-Instanz oder einen vorhandenen Cloud Run-Dienst erstellen.IMAGE_URL: ein Verweis auf das Container-Image, z. B.us-docker.pkg.dev/cloudrun/container/instances:latest.REGION: die Google Cloud Region, in der Sie die Instanz ausführen, z. B.europe-west1.
Clientbibliotheken
So erstellen Sie eine neue Instanz aus Code:
REST API
Senden Sie zum Erstellen einer neuen Cloud Run-Instanz eine POST-HTTP-Anfrage an den Endpunkt instances.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{ "containers": [{ "image": "IMAGE_URL", "ports": [{"containerPort": PORT}] }], "ingress": "INGRESS_TRAFFIC_ALL", "invokerIamDisabled": true, "timeout": "3600s" }' \ "https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/instances?instance_id=INSTANCE_NAME"
Ersetzen Sie Folgendes:
IMAGE_URL: die URL Ihres Container-Images.PORT: der Port, an dem Ihr Container auf Anfragen wartet.PROJECT_ID: Ihre Google Cloud Projekt-ID.REGION: die Google Cloud Region Ihrer Bereitstellung.INSTANCE_NAME: der Name Ihrer neuen Instanz.
Nachdem Sie eine Instanz erstellt haben, erhält sie eine Cloud Run-URL im folgenden Format:
https://INSTANCE_NAME-PROJECT_NUMBER.REGION.run.app
Instanz aktualisieren
Wenn Sie eine Instanz aktualisieren, z. B. ihr Container-Image, ihren Port oder ihre Umgebungsvariablen, wird die Instanz neu gestartet.
gcloud
So aktualisieren Sie eine Cloud Run-Instanz mit dem Befehl gcloud beta run instances update:
gcloud beta run instances update INSTANCE_NAME \ --image NEW_IMAGE_URL \ --region REGION
So aktualisieren Sie eine Cloud Run-Instanz mit dem Befehl gcloud beta run instances deploy:
gcloud beta run instances deploy INSTANCE_NAME \ --image IMAGE_URL \ --region REGION
REST API
Senden Sie zum Aktualisieren der Konfiguration einer Cloud Run-Instanz über die API eine PATCH-HTTP-Anfrage an den URI-Endpunkt der Instanz.
curl -H "Content-Type: application/json" \ -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -d '{template: {containers: [{image: "IMAGE_URL"}]}}' \ "https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/instances/INSTANCE_NAME"
Instanz beenden
Verwenden Sie den Befehl oder die Methode „Beenden“, um eine ausgeführte Cloud Run-Instanz zu beenden.
gcloud
So beenden Sie eine Instanz:
gcloud beta run instances stop INSTANCE_NAME \ --region REGION
Clientbibliotheken
So beenden Sie eine ausgeführte Instanz aus Code:
REST API
Senden Sie zum Beenden einer Instanz eine POST-HTTP-Anfrage mit dem Dekorator :stop:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/instances/INSTANCE_NAME:stop"
Instanz starten oder neu starten
Verwenden Sie den Befehl oder die Methode „Starten“, um eine beendete Instanz zu starten oder einen Neustart einer vorhandenen Instanz zu erzwingen.
gcloud
So starten oder starten Sie eine Instanz neu:
gcloud beta run instances start INSTANCE_NAME \ --region REGION
Clientbibliotheken
So starten Sie eine beendete Instanz aus Code:
REST API
Senden Sie zum Starten einer Instanz eine POST-HTTP-Anfrage mit dem Dekorator :start:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/instances/INSTANCE_NAME:start"
Liste der Instanzen in Ihrem Projekt ansehen
Sie können alle aktiven und inaktiven Instanzen in Ihrem Projekt ansehen.
gcloud
So listen Sie die Instanzen in einer bestimmten Region auf:
gcloud beta run instances list \ --region REGION
Ersetzen Sie REGION durch die Google Cloud Region
in der Sie die Instanz ausführen.
Clientbibliotheken
So listen Sie aktive und inaktive Instanzen aus Code auf:
REST API
Senden Sie zum Abrufen einer Liste von Instanzen eine GET-HTTP-Anfrage:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/instances"
Instanzdetails anzeigen
Verwenden Sie den Befehl oder die Methode „Beschreiben“, um Konfigurationsdetails und den aktuellen Status aufzurufen.
gcloud
So beschreiben Sie eine Instanz:
gcloud beta run instances describe INSTANCE_NAME \ --region REGION
Clientbibliotheken
So rufen Sie Konfigurationsdetails und den Status einer Instanz aus Code auf:
REST API
Senden Sie zum Beschreiben einer Instanz eine GET-HTTP-Anfrage:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/instances/INSTANCE_NAME"
Instanz löschen
Wenn Sie eine Instanz löschen, werden ihre Konfiguration, Metadaten, öffentliche direkte URL-Zuordnung und Identitätsrollen dauerhaft aus Ihrem Projekt entfernt.
gcloud
So löschen Sie eine Instanz:
gcloud beta run instances delete INSTANCE_NAME \ --region REGION
Clientbibliotheken
So löschen Sie eine Instanz aus Code:
REST API
Senden Sie zum Löschen einer Instanz eine DELETE-HTTP-Anfrage:
curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/instances/INSTANCE_NAME"
Nächste Schritte
- Informationen zum Aufrufen der Logging-Transaktionen für Ihre Instanzen finden Sie unter Logging und Logs in Cloud Run ansehen.
- Cloud Run-Instanz konfigurieren: