Se hai codice sorgente o funzioni in un repository Git e vuoi automatizzare le build e configurare deployment continui da un repository, puoi utilizzare Cloud Build o Developer Connect nella console Cloud Run.
Quando configuri questa opzione, Cloud Run utilizza un trigger Cloud Build per creare ed eseguire automaticamente il deployment del codice ogni volta che vengono inviati nuovi commit a un determinato ramo di un repository Git. Le informazioni sul repository di origine vengono visualizzate nella console Google Cloud per il tuo servizio dopo il deployment su Cloud Run.
Nella console Cloud Run:
Se selezioni Cloud Build, puoi configurare i deployment continui da GitHub. Per un esempio, consulta la guida rapida per creare un repository di modelli ed eseguire il deployment continuo da Git.
Se selezioni Developer Connect (anteprima), puoi configurare deployment continui dai repository GitHub, GitLab e Bitbucket.
In alternativa, puoi utilizzare Cloud Deploy per configurare una pipeline di distribuzione continua per eseguire il deployment dei servizi Cloud Run in più ambienti.
Prima di iniziare
- Hai un repository git con un
Dockerfileo la tua base di codice è scritta in una delle lingue supportate dai buildpack di Google Cloud. -
Enable the Cloud Build API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles. Se selezioni l'opzione Developer Connect (anteprima), abilita l'API Developer Connect:
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per eseguire il deployment dei servizi Cloud Run da Git utilizzando Cloud Build o Developer Connect, chiedi all'amministratore di concederti i seguenti ruoli IAM sul progetto:
-
Amministratore Artifact Registry (
roles/artifactregistry.admin) -
Editor Cloud Build (
roles/cloudbuild.builds.editor) -
Cloud Run Developer (
roles/run.developer) -
Utente Service Account (
roles/iam.serviceAccountUser) -
Amministratore Service Usage (
roles/serviceusage.serviceUsageAdmin)
Il account di servizio che esegue la build deve avere i seguenti ruoli:
- Service account Cloud Build (
roles/cloudbuild.builds.builder) - Cloud Run Admin (
roles/run.admin) - Utente Service Account (
roles/iam.serviceAccountUser) - Se selezioni l'opzione Developer Connect (anteprima):
- Developer Connect Read Token Accessor (
roles/developerconnect.readTokenAccessor) - Se ti connetti a repository GitLab o Bitbucket: Secret Manager Secret Accessor (
roles/secretmanager.secretAccessor)
- Developer Connect Read Token Accessor (
Per un elenco di ruoli e autorizzazioni IAM associati a Cloud Run, consulta Ruoli IAM di Cloud Run e Autorizzazioni IAM di Cloud Run. Se il tuo servizio Cloud Run interagisce con le APIGoogle Cloud , come le librerie client Cloud, consulta la guida alla configurazione dell'identità di servizio. Per saperne di più sulla concessione dei ruoli, consulta Autorizzazioni di deployment e Gestire l'accesso.
Configura il deployment continuo dalla console Cloud Run
La procedura di configurazione varia leggermente a seconda che tu stia configurando il deployment continuo su un nuovo servizio o su un servizio esistente. Fai clic sulla scheda appropriata per saperne di più.
Nuovo servizio
Nella console Google Cloud , vai alla pagina Cloud Run:
Se stai creando un nuovo servizio, fai clic su Connetti repository per visualizzare il modulo Crea servizio.
Se stai modificando un servizio esistente, individua il servizio nell'elenco dei servizi e fai clic. Fai clic su Connetti al repository.
Seleziona Cloud Build o Developer Connect.
Se hai selezionato Cloud Build, consulta Configura con Cloud Build.
Se hai selezionato Developer Connect, consulta Configura con Developer Connect.
Servizio esistente
Nella console Google Cloud , vai alla pagina Cloud Run:
Individua il servizio nell'elenco dei servizi e fai clic.
Fai clic su Connetti al repository e segui le istruzioni riportate in Configura con Cloud Build.
Configura con Cloud Build
Nel riquadro Configura con Cloud Build:
Seleziona un repository dall'elenco. Tieni presente che il caricamento dell'elenco dei repository richiede alcuni istanti. Segui le istruzioni e fai clic su Avanti.
GitHub è il fornitore di repository predefinito. Se non hai ancora eseguito l'autenticazione, fai clic su Autentica e segui le istruzioni. La connessione di un repository viene eseguita utilizzando l'app Cloud Build GitHub.
Se non riesci a trovare il repository, fai clic sul link Gestisci repository collegati. Segui le istruzioni per concedere l'accesso al repository a Cloud Build.
Nel passaggio Configurazione build, compila le opzioni:
Ramo
- Indica quale origine deve essere utilizzata quando viene eseguito il trigger. Puoi inserire l'regex qui. I rami corrispondenti vengono verificati automaticamente: puoi visualizzarli sotto l'input. Tieni presente che se viene trovata corrispondenza con un solo ramo, il trigger verrà eseguito automaticamente dopo la creazione.
Tipo di build
Dockerfile: se il repository deve essere creato utilizzando Docker e contiene un Dockerfile, seleziona questa opzione.
- In Posizione origine, specifica la posizione e il nome del Dockerfile. Questa directory verrà utilizzata come contesto della build Docker. Tutti i percorsi devono essere relativi alla directory corrente.
Go, Node.js, Python, Java, .NET Core, Ruby o PHP tramite i buildpack Google Cloud: se il repository deve essere creato utilizzando i buildpack, seleziona questa opzione.
- In Directory contesto della build, specifica la directory.
- In Entrypoint (facoltativo), fornisci il comando per avviare il server. Ad esempio,
gunicorn -p :8080 main:appper Python ejava -jar target/myjar.jarper Java. Lascia vuoto questo campo per utilizzare il comportamento predefinito. - In Target funzione (solo per i deployment di funzioni), inserisci la funzione da richiamare. In caso contrario, lascia vuoto il campo.
Fai clic su Salva.
La pagina viene ricaricata e torni al modulo Crea servizio.
Verifica le impostazioni selezionate nella sezione Repository di origine.
Compila il resto del modulo in Configura.
Fai clic su Crea.
Verrà visualizzata la pagina Dettagli servizio, in cui potrai monitorare l'avanzamento della configurazione di creazione e deployment dal repository.
Una volta completati tutti i passaggi, puoi:
- Fai clic su Modifica impostazioni repository nella console Cloud Run per modificare il trigger Cloud Build nella console Cloud Build.
- Visualizza la cronologia delle build facendo clic sul link Log nel passaggio Creazione e deployment dal repository.
- Visualizza i dettagli della fonte nella sezione Dettagli revisione.
Configurare manualmente il deployment continuo
Consulta la sezione Configurazione del deployment continuo manuale se devi utilizzare una procedura manuale e non l'interfaccia utente.
Collega il trigger Cloud Build esistente al servizio Cloud Run
Se hai già un trigger Cloud Build, puoi collegarlo al servizio aggiungendo un'etichetta al tuo servizio Cloud Run.
Per aggiungere un'etichetta nella console Cloud Run:
Nella console Google Cloud , vai alla pagina Cloud Run:
Seleziona il tuo servizio.
Per il servizio selezionato, fai clic su Etichette nella parte superiore della pagina per aprire il riquadro Etichette.
Aggiungi un'etichetta con gcb-trigger-id come chiave e l'identificatore univoco del trigger di Cloud Build come valore (non il nome del trigger). Se la chiave gcb-trigger-id esiste già, modifica il valore. Consulta Impostare o modificare le etichette per configurare l'etichetta.
Configura con Developer Connect
Nel riquadro Configura con Developer Connect:
Seleziona un repository e fai clic su Avanti.
Se non vedi il repository che vuoi selezionare, fai clic su Collega nuovo repository per aprire il riquadro Collega nuovi repository tramite Developer Connect. Fai clic sulla scheda appropriata per scoprire di più sulla connessione a uno dei provider di gestione del codice sorgente.
GitHub
Per le opzioni GitHub, GitHub Enterprise Cloud e GitHub Enterprise, fai clic su Connetti.
Se non vedi una finestra di dialogo, disattiva i plug-in del browser che bloccano i popup e assicurati che le impostazioni del browser consentano i popup. Ad esempio, in Chrome, segui le istruzioni per consentire i popup.
Concedi le autorizzazioni sul tuo account GitHub e collega i repository seguendo le istruzioni riportate di seguito. I prompt visualizzati nel browser web dipendono dal fatto che l'account GitHub abbia già installato l'app GitHub di Cloud Run.
Nella finestra di dialogo Cloud Run, completa i seguenti passaggi:
Se vedi un elenco di account GitHub, installa l'app e collega i repository completando questi passaggi:
Scegli l'account GitHub che vuoi utilizzare.
Seleziona uno o più repository a cui vuoi concedere l'accesso.
Se viene visualizzato un messaggio che ti chiede di riutilizzare un'installazione dell'app esistente, scegli dove configurare l'app completando questi passaggi:
Fai clic su Account GitHub per visualizzare gli account su cui è installata l'app Google Cloud Run. Se vedi l'account che vuoi utilizzare, sceglilo facendo clic su Conferma.
Se non vedi l'account che vuoi utilizzare, procedi nel seguente modo:
Scegli Installa l'app GitHub su un altro account GitHub e fai clic su Conferma.
Segui i passaggi di GitHub per consentire l'installazione dell'app.
Seleziona uno o più repository a cui vuoi concedere l'accesso.
Quando la finestra di dialogo si chiude, l'installazione dell'app è completata.
GitLab
Per l'opzione GitLab:
-
Nella sezione Token di accesso personali, inserisci i token per il tuo account:
- Token di accesso API: inserisci il token di accesso personale con
ambito
api. - Token di accesso alle API in lettura: inserisci il token di accesso personale con
ambito
read_api.
È tua responsabilità assicurarti che i token GitLab rimangano validi. I token GitLab hanno una durata massima di 365 giorni, se non diversamente specificato dal creatore del token o da un amministratore. Per scoprire come gestire le impostazioni e le notifiche di scadenza dei token, consulta la documentazione di GitLab sui token di accesso personale.
Per ulteriori informazioni, consulta la documentazione di GitLab sulla scadenza dei token di accesso personale.
- Token di accesso API: inserisci il token di accesso personale con
ambito
Fai clic su Mostra altro per visualizzare le impostazioni di configurazione facoltative.
- (Facoltativo) Nella sezione Crittografia, seleziona una chiave CMEK per criptare i secret di Secret Manager creati da Cloud Run.
GitLab edizione Enterprise
Per l'opzione GitLab Enterprise Edition:
In URL host, inserisci l'URL dell'host a cui vuoi connetterti.
-
Nella sezione Token di accesso personali, inserisci i token per il tuo account:
- Token di accesso API: inserisci il token di accesso personale con
ambito
api. - Token di accesso alle API in lettura: inserisci il token di accesso personale con
ambito
read_api.
È tua responsabilità assicurarti che i token GitLab rimangano validi. I token GitLab hanno una durata massima di 365 giorni, se non diversamente specificato dal creatore del token o da un amministratore. Per scoprire come gestire le impostazioni e le notifiche di scadenza dei token, consulta la documentazione di GitLab sui token di accesso personale.
Per ulteriori informazioni, consulta la documentazione di GitLab sulla scadenza dei token di accesso personale.
- Token di accesso API: inserisci il token di accesso personale con
ambito
Fai clic su Mostra altro per visualizzare le impostazioni di configurazione facoltative.
- (Facoltativo) Nella sezione Crittografia, seleziona una chiave CMEK per criptare i secret di Secret Manager creati da Cloud Run.
Bitbucket
Per l'opzione Bitbucket Cloud:
Per Workspace, inserisci il tuo ID workspace Bitbucket Cloud.
Nella sezione Token di accesso, inserisci i token di accesso di Bitbucket:
- Token di accesso dell'Authorizer: inserisci il token di accesso dell'Authorizer.
- Token di accesso in lettura: inserisci il tuo token di accesso in lettura.
Fai clic su Mostra altro per visualizzare le impostazioni di configurazione facoltative.
- (Facoltativo) Nella sezione Crittografia, seleziona una chiave CMEK per criptare i secret di Secret Manager creati da Cloud Run.
Bitbucket Data Center
Per l'opzione Bitbucket Data Center:
In URL host, inserisci l'URL dell'host Bitbucket Data Center a cui vuoi connetterti.
Nella sezione Token di accesso, inserisci i token di accesso di Bitbucket Cloud:
Token di accesso amministrativo: inserisci il token con accesso all'ambito di amministrazione del repository.
Token di accesso in lettura: inserisci il token con accesso all'ambito di lettura del repository.
Fai clic su Mostra altro per visualizzare le impostazioni di configurazione facoltative.
- (Facoltativo) Nella sezione Crittografia, seleziona una chiave CMEK per criptare i secret di Secret Manager creati da Cloud Run.
Fai clic su Connetti. Questa procedura può richiedere alcuni secondi.
Nel passaggio Configurazione build, compila le opzioni:
Ramo
- Indica quale origine deve essere utilizzata quando viene eseguito il trigger. Puoi inserire l'regex qui. I rami corrispondenti vengono verificati automaticamente: puoi visualizzarli sotto l'input. Tieni presente che se viene trovata corrispondenza con un solo ramo, il trigger verrà eseguito automaticamente dopo la creazione.
Tipo di build
Dockerfile: se il repository deve essere creato utilizzando Docker e contiene un Dockerfile, seleziona questa opzione.
- In Posizione origine, specifica la posizione e il nome del Dockerfile. Questa directory verrà utilizzata come contesto della build Docker. Tutti i percorsi devono essere relativi alla directory corrente.
Go, Node.js, Python, Java, .NET Core, Ruby o PHP tramite i buildpack Google Cloud: se il repository deve essere creato utilizzando i buildpack, seleziona questa opzione.
- In Directory contesto della build, specifica la directory.
- In Entrypoint (facoltativo), fornisci il comando per avviare il server. Ad esempio,
gunicorn -p :8080 main:appper Python ejava -jar target/myjar.jarper Java. Lascia vuoto questo campo per utilizzare il comportamento predefinito. - In Target funzione (solo per i deployment di funzioni), inserisci la funzione da richiamare. In caso contrario, lascia vuoto il campo.
Fai clic su Salva.
Compila il resto del modulo in Configura.
Al termine della configurazione del servizio, fai clic su Crea per eseguire il deployment dell'immagine su Cloud Run e attendi il completamento del deployment.
Fai clic sul link URL visualizzato per aprire l'endpoint univoco e stabile del servizio di cui è stato eseguito il deployment.