Auf dieser Seite wird beschrieben, wie Sie benutzerdefinierte URLs konfigurieren und verwalten, damit Sie für Ihre Cloud Run-Dienste anstelle der standardmäßigen deterministischen URL eine einfach einzugebende, einprägsame und global verfügbare URL erhalten:
- Benutzerdefiniertes URL-Format:
https://CUSTOM_URL_DOMAIN.cloud.run - Standard-URL-Format:
https://SERVICE_NAME-PROJECT_NUMBER.REGION.run.app
Mit benutzerdefinierten URLs können Sie Ihre Dienste freigeben, ohne benutzerdefinierte Domains, DNS-Einträge oder externe Load Balancer einzurichten.
Wenn Sie benutzerdefinierte URLs für Ihre Cloud Run-Dienste verwenden, profitieren Sie von den folgenden Vorteilen:
- Einfache URLs: Ordnen Sie Ihren Dienst einem übersichtlichen
https://CUSTOM_URL_DOMAIN.cloud.run-Format zu. - Globale Verfügbarkeit: Benutzerdefinierte URLs sind von überall aus zugänglich, genau wie Standard-
.run.app-URLs. - Flexibler Lebenszyklus: Sie können eine benutzerdefinierte URL flexibel an Dienste anhängen, von Diensten trennen oder zwischen Diensten verschieben, ohne eine neue Version bereitzustellen.
- Mehrere Zuordnungen: Sie können einem einzelnen Dienst mehrere benutzerdefinierte URLs zuordnen.
Hinweis
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
- Richten Sie Ihre Cloud Run-Entwicklungsumgebung in Ihrem Google Cloud -Projekt ein.
- Installieren und initialisieren Sie die gcloud CLI.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Verwalten benutzerdefinierter URLs benötigen:
-
So erstellen, aktualisieren oder löschen Sie benutzerdefinierte URL-Zuweisungen:
Cloud Run-Administrator (
roles/run.admin) im Projekt
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
Beschränkungen
- Standardmäßig können Sie bis zu 50 Domains pro Projekt zuordnen.
- Die benutzerdefinierte URL-Subdomain muss zwischen 6 und 63 Zeichen lang sein, den Standard-DNS-Namenskonventionen entsprechen, die alphanumerische Zeichen und Bindestriche zulassen, und darf nicht mit einem Bindestrich beginnen oder enden.
- Bestimmte Subdomains sind eingeschränkt.
- Sie können eine benutzerdefinierte URL nicht vorübergehend deaktivieren, wie es bei einer Standard-
.run.app-URL möglich ist. Wenn Sie keine Zugriffe mehr über die Karte erhalten möchten, müssen Sie die Zuordnung löschen. - Cloud Run-Dienste, die den Ingress auf Intern oder Intern und Cloud Load Balancing beschränken, werden nicht unterstützt.
- Terraform wird für benutzerdefinierte URLs nicht unterstützt. Verwenden Sie nicht die
domain_mapping-Ressource in der Vorschau, um potenzielle Änderungen zu vermeiden, die zu Problemen führen können. - Benutzerdefinierte URLs sind völlig unabhängig. Wenn Sie die Standard-
.run.app-URL für einen Dienst deaktivieren, bleibt Ihre benutzerdefinierte URL-Zuordnung vollständig aktiv und zugänglich.
Benutzerdefinierte URL an einen Dienst anhängen oder einem Dienst zuordnen
Sie können einem neuen Dienst beim Bereitstellen eine benutzerdefinierte URL zuweisen oder einem vorhandenen Dienst über die Google Cloud -Konsole oder gcloud eine benutzerdefinierte URL zuordnen.
Benutzerdefinierte URLs an einen neuen Dienst anhängen
Wenn Sie einen neuen Cloud Run-Dienst bereitstellen, können Sie im Rahmen der Bereitstellungskonfiguration eine benutzerdefinierte URL anhängen.
Rufen Sie in der Google Cloud Console die Seite Cloud Run > Dienste auf.
Klicken Sie auf Container bereitstellen.
Geben Sie die grundlegenden Konfigurationsdetails für Ihren Dienst ein.
Klicken Sie im Bereich Benutzerdefinierte URLs auf Benutzerdefinierte URL hinzufügen.
Geben Sie eine gültige benutzerdefinierte URL-Domain ein.
Optional. Wenn Sie mehrere benutzerdefinierte URLs hinzufügen möchten, klicken Sie noch einmal auf Benutzerdefinierte URL hinzufügen.
Klicken Sie auf Erstellen.
Benutzerdefinierte URLs einem vorhandenen Dienst zuordnen
Sie können eine benutzerdefinierte URL einem vorhandenen Cloud Run-Dienst über dieGoogle Cloud -Konsole oder die gcloud CLI zuordnen.
Console
Rufen Sie in der Google Cloud Console die Seite Domainzuordnungen auf.
Klicken Sie auf Benutzerdefinierte URL hinzufügen.
Wählen Sie in der Liste Dienst den Dienst aus, dem Sie die Domain zuordnen möchten.
Geben Sie die Domain Ihrer benutzerdefinierten URL ein.
Klicken Sie auf Weiter.
Wenn Sie mehrere benutzerdefinierte URLs hinzufügen möchten, klicken Sie noch einmal auf Benutzerdefinierte URL hinzufügen und folgen Sie der Anleitung.
gcloud
Führen Sie den folgenden Befehl aus, um eine benutzerdefinierte URL-Domainzuordnung für einen vorhandenen Dienst zu erstellen:
gcloud beta run domain-mappings create \ --service=SERVICE_NAME \ --domain=CUSTOM_URL_DOMAIN.cloud.run
Ersetzen Sie Folgendes:
- SERVICE_NAME: Der Name des Dienstes, dem Sie die benutzerdefinierte URL zuordnen.
- CUSTOM_URL_DOMAIN: Die Subdomain, die Sie anhängen möchten.
Optional. Wenn Sie mehrere benutzerdefinierte URLs mit der gcloud CLI zuordnen möchten, führen Sie den Befehl zum Erstellen der Zuordnung für jede benutzerdefinierte URL wiederholt aus:
gcloud beta run domain-mappings create \ --service=SERVICE_NAME \ --domain=CUSTOM_URL_DOMAIN_1.cloud.run gcloud beta run domain-mappings create \ --service=SERVICE_NAME \ --domain=CUSTOM_URL_DOMAIN_2.cloud.run
Ersetzen Sie Folgendes:
- SERVICE_NAME: der Name des Dienstes, den Sie bereitstellen.
- CUSTOM_URL_DOMAIN_1: Die erste anzuhängende Subdomain.
- CUSTOM_URL_DOMAIN_2: die zweite anzuhängende Subdomain.
Wenn die angeforderte Subdomain bereits von einem anderen Nutzer oder Dienst in Google Cloudverwendet wird, erhalten Sie eine Fehlermeldung und müssen ein eindeutiges Ziel auswählen.
Benutzerdefinierte URLs auflisten und ansehen
Sie können alle benutzerdefinierten URLs auflisten und Zuordnungsdetails für Ihre Umgebung aufrufen.
Console
Rufen Sie in der Google Cloud -Console die Seite Cloud Run auf.
Klicken Sie auf den Namen des Dienstes.
Rufen Sie den Tab Netzwerk auf.
Suchen Sie im Abschnitt Benutzerdefinierte Domains unter dem Label Endpunkte nach den angehängten URLs.
gcloud
Führen Sie den folgenden Befehl aus, um alle benutzerdefinierten URLs und Domainzuordnungen in einem Projekt aufzulisten:
gcloud beta run domain-mappings list
So rufen Sie Details für eine bestimmte benutzerdefinierte URL-Domainzuordnung auf:
gcloud beta run domain-mappings describe \ --domain=CUSTOM_URL_DOMAIN.cloud.run
Ersetzen Sie CUSTOM_URL_DOMAIN durch die Subdomain, die Sie beschreiben möchten.
Sicherheit mit benutzerdefinierten Zielgruppen
Sie können Ihrer benutzerdefinierten URL eine benutzerdefinierte Zielgruppe zuweisen, um den Zugriff einzuschränken.
gcloud beta run services update SERVICE_NAME \ --add-custom-audiences=CUSTOM_URL_DOMAIN.cloud.run
Ersetzen Sie Folgendes:
- SERVICE_NAME: der Name Ihres Dienstes.
- CUSTOM_URL_DOMAIN: Die Subdomain, die als benutzerdefinierte Zielgruppe dient.
Benutzerdefinierte URL löschen
Sie können eine benutzerdefinierte URL-Zuordnung löschen, wenn sie nicht mehr benötigt wird.
Console
Rufen Sie in der Google Cloud Console die Seite Domainzuordnungen auf.
Klicken Sie auf das Kästchen neben der benutzerdefinierten URL, die Sie löschen möchten.
Klicken Sie auf Löschen.
gcloud
Führen Sie den folgenden Befehl aus, um eine benutzerdefinierte URL-Domainzuordnung aus einem Cloud Run-Dienst zu entfernen:
gcloud beta run domain-mappings delete \ --domain=CUSTOM_URL_DOMAIN.cloud.run
Ersetzen Sie CUSTOM_URL_DOMAIN durch die Subdomain, die Sie löschen möchten.
Bekannte Probleme
Verzögerung bei der Übertragung: Es kann einige Sekunden dauern, bis eine benutzerdefinierte URL nach der Erstellung vollständig funktioniert. Wenn Sie direkt nach der Erstellung auf die URL zugreifen, kann es zu einem vorübergehenden Routingfehler kommen.
Benutzerdefinierte URL aktualisieren oder verschieben: Es gibt keinen direkten Aktualisierungsbefehl für benutzerdefinierte URLs. Wenn Sie eine angehängte benutzerdefinierte URL von einem Dienst in einen anderen verschieben möchten, müssen Sie sie löschen und neu erstellen.
Console
Rufen Sie in der Google Cloud Console die Seite Domainzuordnungen auf.
Setzen Sie ein Häkchen neben der benutzerdefinierten URL, die Sie verschieben möchten.
Klicken Sie auf Löschen.
Klicken Sie auf Benutzerdefinierte URL hinzufügen.
Wählen Sie in der Liste Dienst den neuen Zieldienst aus.
Geben Sie die genaue Domain Ihrer zuvor beanspruchten benutzerdefinierten URL ein.
Klicken Sie auf Erstellen, um den Traffic an den neuen Dienst weiterzuleiten.
gcloud
Löschen Sie die vorhandene Zuordnung aus dem alten Dienst:
gcloud beta run domain-mappings delete \ --domain=CUSTOM_URL_DOMAIN.cloud.run
Ersetzen Sie CUSTOM_URL_DOMAIN durch die Subdomain, die Sie zuvor beansprucht haben.
URL zurückfordern und dem neuen Dienst zuordnen:
gcloud beta run domain-mappings create \ --service=NEW_SERVICE_NAME \ --domain=CUSTOM_URL_DOMAIN.cloud.run
Ersetzen Sie Folgendes:
- NEW_SERVICE_NAME: Der Name des Dienstes, zu dem Sie die benutzerdefinierte URL verschieben.
- CUSTOM_URL_DOMAIN: Die Subdomain, die Sie anhängen möchten.