Questa pagina descrive come configurare e gestire gli URL personalizzati, consentendoti di ottenere un URL semplice da digitare, memorabile e disponibile a livello globale per i tuoi servizi Cloud Run anziché l'URL deterministico predefinito:
- Formato URL personalizzato:
https://CUSTOM_SUBDOMAIN.cloud.run - Formato URL predefinito:
https://SERVICE_NAME-PROJECT_NUMBER.REGION.run.app
Utilizzando URL personalizzati, puoi condividere i tuoi servizi senza configurare domini personalizzati, record DNS o bilanciatori del carico esterni.
Quando utilizzi URL personalizzati per i tuoi servizi Cloud Run, ottieni i seguenti vantaggi:
- URL semplici: mappa il tuo servizio in un formato
https://CUSTOM_SUBDOMAIN.cloud.runpulito. - Disponibilità globale: gli URL personalizzati sono accessibili da qualsiasi luogo, come gli URL
.run.appstandard. - Ciclo di vita flessibile: collega, scollega o sposta in modo flessibile un URL personalizzato tra i servizi senza eseguire il deployment di una nuova revisione.
- Più mappature: puoi mappare più URL personalizzati a un singolo servizio.
Prima di iniziare
- Accedi al tuo account Google Cloud . Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per l'esecuzione, il test e il deployment dei carichi di lavoro.
-
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.
-
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.
- Configura l'ambiente di sviluppo Cloud Run nel tuo progetto Google Cloud .
- Installa e inizializza gcloud CLI.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per gestire gli URL personalizzati, chiedi all'amministratore di concederti i seguenti ruoli IAM:
-
Per creare, aggiornare o eliminare i mapping URL personalizzati:
Amministratore Cloud Run (
roles/run.admin) sul progetto
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Limitazioni
- Per impostazione predefinita, puoi mappare fino a 50 domini per progetto.
- Il sottodominio dell'URL personalizzato deve contenere da 6 a 63 caratteri, rispettare le convenzioni di denominazione DNS standard che consentono caratteri alfanumerici e trattini e non può iniziare o terminare con un trattino.
- Alcuni sottodomini sono soggetti a limitazioni.
- Non puoi disattivare temporaneamente un URL personalizzato come puoi fare con un URL
.run.apppredefinito. Per interrompere la pubblicazione del traffico, devi eliminare il mapping. - I servizi Cloud Run che limitano il traffico in entrata al traffico interno o interno e Cloud Load Balancing non sono supportati.
- Terraform non è supportato per gli URL personalizzati. Per evitare potenziali modifiche
che potrebbero causare problemi, non utilizzare la risorsa
domain_mappinganteprima. - Gli URL personalizzati sono completamente indipendenti. Se scegli di disattivare l'URL
.run.apppredefinito per un servizio, il mapping degli URL personalizzati rimane completamente attivo e accessibile.
Allegare o mappare un URL personalizzato a un servizio
Puoi collegare un URL personalizzato a un nuovo servizio quando lo esegui il deployment oppure mappare un URL personalizzato a un servizio esistente utilizzando la console Google Cloud o gcloud.
Allegare URL personalizzati a un nuovo servizio
Quando esegui il deployment di un nuovo servizio Cloud Run, puoi allegare un URL personalizzato nell'ambito della configurazione del deployment.
Nella console Google Cloud , vai alla pagina Cloud Run Servizi.
Fai clic su Esegui il deployment del container.
Inserisci i dettagli di configurazione di base per il servizio.
Nella sezione URL personalizzati, fai clic su Aggiungi un URL personalizzato.
Inserisci un sottodominio dell'URL personalizzato valido.
Facoltativo. Per aggiungere più URL personalizzati, fai di nuovo clic su Aggiungi un URL personalizzato.
Fai clic su Crea.
Mappare URL personalizzati a un servizio esistente
Puoi mappare un URL personalizzato a un servizio Cloud Run esistente utilizzando la consoleGoogle Cloud o gcloud CLI.
Console
Nella console Google Cloud , vai alla pagina Mappature dei domini.
Fai clic su Aggiungi URL personalizzato.
Nell'elenco Servizio, seleziona il servizio a cui vuoi eseguire la mappatura.
Inserisci il sottodominio dell'URL personalizzato.
Fai clic su Continua.
Se vuoi aggiungere più URL personalizzati, fai di nuovo clic su Aggiungi un URL personalizzato e segui i passaggi precedenti.
gcloud
Per creare un mapping del sottodominio URL personalizzato per un servizio esistente, esegui questo comando:
gcloud beta run domain-mappings create \ --service=SERVICE_NAME \ --domain=CUSTOM_SUBDOMAIN.cloud.run
Sostituisci quanto segue:
- SERVICE_NAME: il nome del servizio a cui stai mappando l'URL personalizzato.
- CUSTOM_SUBDOMAIN: il sottodominio che vuoi collegare.
Facoltativo. Per mappare più URL personalizzati utilizzando gcloud CLI, esegui ripetutamente il comando di creazione della mappatura per ogni URL personalizzato:
gcloud beta run domain-mappings create \ --service=SERVICE_NAME \ --domain=CUSTOM_SUBDOMAIN_1.cloud.run gcloud beta run domain-mappings create \ --service=SERVICE_NAME \ --domain=CUSTOM_SUBDOMAIN_2.cloud.run
Sostituisci quanto segue:
- SERVICE_NAME: il nome del servizio che stai eseguendo il deployment.
- CUSTOM_SUBDOMAIN_1: il primo sottodominio da collegare.
- CUSTOM_SUBDOMAIN_2: il secondo sottodominio da collegare.
Se il sottodominio richiesto è già in uso da un altro utente o servizio su Google Cloud, ricevi un errore e devi scegliere una destinazione univoca.
Elencare e visualizzare gli URL personalizzati
Puoi elencare tutti gli URL personalizzati e visualizzare i dettagli di mappatura per il tuo ambiente.
Console
Nella console Google Cloud , vai alla pagina Cloud Run.
Fai clic sul nome del servizio.
Vai alla scheda Networking.
Individua gli URL allegati nella sezione Domini personalizzati sotto l'etichetta Endpoint.
gcloud
Per elencare tutti i mapping di URL personalizzati e domini in un progetto, esegui questo comando:
gcloud beta run domain-mappings list
Per visualizzare i dettagli di una mappatura di sottodominio URL personalizzato specifica, esegui:
gcloud beta run domain-mappings describe \ --domain=CUSTOM_SUBDOMAIN.cloud.run
Sostituisci CUSTOM_SUBDOMAIN con il sottodominio che vuoi descrivere.
Proteggere con i segmenti di pubblico personalizzati
Puoi allegare un segmento di pubblico personalizzato al tuo URL personalizzato per limitare l'accesso.
gcloud beta run services update SERVICE_NAME \ --add-custom-audiences=CUSTOM_SUBDOMAIN.cloud.run
Sostituisci quanto segue:
- SERVICE_NAME: il nome del servizio.
- CUSTOM_SUBDOMAIN: il sottodominio che funge da pubblico personalizzato.
Eliminare un URL personalizzato
Puoi eliminare una mappatura dell'URL personalizzato quando non è più necessaria.
Console
Nella console Google Cloud , vai alla pagina Mappature dei domini.
Seleziona la casella di controllo accanto all'URL personalizzato da eliminare.
Fai clic su Elimina.
gcloud
Per rimuovere un mapping di sottodominio URL personalizzato da un servizio Cloud Run, esegui questo comando:
gcloud beta run domain-mappings delete \ --domain=CUSTOM_SUBDOMAIN.cloud.run
Sostituisci CUSTOM_SUBDOMAIN con il sottodominio che vuoi eliminare.
Problemi noti
Latenza di propagazione: potrebbero essere necessari alcuni secondi dopo la creazione di un URL personalizzato prima che sia completamente operativo. L'accesso all'URL immediatamente dopo la creazione potrebbe causare un errore di routing temporaneo.
Aggiorna o sposta un URL personalizzato: non esiste un comando di aggiornamento diretto per gli URL personalizzati. Per spostare un URL personalizzato allegato da un servizio a un altro, devi seguire un flusso di eliminazione e ricreazione.
Console
Nella console Google Cloud , vai alla pagina Mappature dei domini.
Seleziona la casella di controllo accanto all'URL personalizzato che vuoi spostare.
Fai clic su Elimina.
Fai clic su Aggiungi URL personalizzato.
Nell'elenco Servizio, seleziona il nuovo servizio di destinazione.
Inserisci l'esatto sottodominio dell'URL personalizzato che hai rivendicato in precedenza.
Fai clic su Crea per reindirizzare il traffico al nuovo servizio.
gcloud
Elimina il mapping esistente dal vecchio servizio:
gcloud beta run domain-mappings delete \ --domain=CUSTOM_SUBDOMAIN.cloud.run
Sostituisci CUSTOM_SUBDOMAIN con il sottodominio che hai rivendicato in precedenza.
Recupera e mappa l'URL al nuovo servizio:
gcloud beta run domain-mappings create \ --service=NEW_SERVICE_NAME \ --domain=CUSTOM_SUBDOMAIN.cloud.run
Sostituisci quanto segue:
- NEW_SERVICE_NAME: il nome del servizio a cui stai spostando l'URL personalizzato.
- CUSTOM_URL_DOMAIN: il sottodominio che vuoi collegare.
Passaggi successivi
- Scopri di più sulla mappatura dei domini personalizzati.
- Scopri di più sulla pubblicazione di asset statici con la CDN.