Questa pagina spiega come eseguire il deployment delle applicazioni in Firebase utilizzando Cloud Build. Se non hai mai utilizzato Cloud Build, leggi prima le guide rapide e la panoramica della configurazione di compilazione.
Prima di iniziare
Abilita le API Cloud Build, Firebase e Resource Manager.
Ruoli richiesti per abilitare le API
Per abilitare le API, devi disporre del ruolo IAM Amministratore utilizzo servizi (
roles/serviceusage.serviceUsageAdmin), che contiene l'autorizzazioneserviceusage.services.enable. Scopri come concedere i ruoli.
Per eseguire i
gcloudcomandi in questa pagina, installa la Google Cloud CLI.Tieni a portata di mano il codice sorgente dell'applicazione, incluso
firebase.json. Il codice sorgente deve essere archiviato in un repository, ad esempio Cloud Source Repositories, GitHub o Bitbucket.Se non hai ancora un progetto di cui eseguire il deployment in Firebase, puoi crearne uno predefinito installando e inizializzando Firebase.
Autorizzazioni IAM obbligatorie
-
Nella Google Cloud console, vai alla settings pagina Autorizzazioni di Cloud Build:
Seleziona l'account di servizio per la build.
Imposta lo stato dei seguenti ruoli su Abilitato:
- Account di servizio Cloud Build | Consente all'account di servizio Cloud Build legacy di aggiornare le build, scrivere i log di build e archiviare gli artefatti di build.
- Amministratore Firebase | Consente a Cloud Build di accedere a Firebase.
- Visualizzatore chiavi API | Consente a Cloud Build di accedere alla configurazione corrente di Firebase Hosting durante il deployment della build.
Utilizzare l'immagine Docker firebase
Cloud Build fornisce un'immagine del builder che puoi utilizzare per richiamare i comandi firebase in Cloud Build. Per utilizzare questo builder in un file di configurazione di Cloud Build, puoi utilizzare il passaggio di build firebase per eseguire il deployment in Firebase:
Crea un file di configurazione della build denominato
cloudbuild.yamlocloudbuild.jsondove PROJECT_ID è il tuo Google Cloud ID progetto e FIREBASE_PROJECT_ID è il tuo ID progetto Firebase:YAML
steps: - name: "us-docker.pkg.dev/firebase-cli/us/firebase" args: ['deploy', '--project=FIREBASE_PROJECT_ID', '--only=hosting'] ## Or, target a specific version of firebase-tools - name: "us-docker.pkg.dev/firebase-cli/us/firebase":x.y.z args: ['deploy', '--project=FIREBASE_PROJECT_ID', '--only=hosting']JSON
{ "steps": [ { "name": "us-docker.pkg.dev/firebase-cli/us/firebase", "args": [ "deploy", "--project", "FIREBASE_PROJECT_ID", "--only", "hosting" ] } ] }Puoi scegliere una versione specifica di
firebase-toolsutilizzando
name: "us-docker.pkg.dev/firebase-cli/us/firebase":x.y.zAvvia la build utilizzando il file di configurazione della build:
gcloud builds submit --region=REGION --config CONFIG_FILE_PATH SOURCE_DIRECTORYDove:
- REGION è una delle regioni di build supportate.
- CONFIG_FILE_PATH è il percorso del file di configurazione della build.
- SOURCE_DIRECTORY è il percorso o l'URL del codice sorgente.
Deployment continuo
Puoi automatizzare il deployment del software in Firebase creando trigger di Cloud Build. Puoi configurare i trigger per creare ed eseguire il deployment delle immagini ogni volta che aggiorni il codice sorgente.
Per automatizzare il deployment in Firebase:
Nel repository, aggiungi un file di configurazione della build con i passaggi per richiamare il
firebase deploycomando, dove PROJECT_ID è l'ID progetto: Google CloudYAML
steps: - name: us-docker.pkg.dev/firebase-cli/us/firebase args: ['deploy', '--project=PROJECT_ID', '--only=hosting']JSON
{ "steps": [ { "name": "us-docker.pkg.dev/firebase-cli/us/firebase", "args": [ "deploy", "--project", "PROJECT_ID", "--only", "hosting" ] } ] }Crea un trigger con il file di configurazione della build creato nel passaggio precedente:
Apri la pagina Trigger nella Google Cloud console:
Seleziona il tuo progetto dal menu a discesa del selettore di progetti nella parte superiore della pagina.
Fai clic su Apri.
Fai clic su Crea trigger.
Nella pagina Crea trigger, inserisci le seguenti impostazioni:
Inserisci un nome per il trigger.
Seleziona l'evento del repository per avviare il trigger.
Seleziona il repository contenente il codice sorgente e il file di configurazione della build.
Specifica l'espressione regolare per il nome del ramo o del tag che avvierà il trigger.
Configurazione: scegli il file di configurazione della build creato in precedenza.
Fai clic su Crea per salvare il trigger di build.
Ogni volta che esegui il push di nuovo codice nel repository, viene avviata automaticamente una build e viene eseguito il deployment in Firebase.
Per ulteriori informazioni sulla creazione di trigger di Cloud Build, consulta Creare e gestire i trigger di build.
Codice di esempio
Per visualizzare un esempio di codice per il deployment in Firebase utilizzando Cloud Build, vai a deploy-firebase-example.
Passaggi successivi
- Scopri come eseguire i deployment blu/verde su Compute Engine
- Scopri come eseguire il deployment su Cloud Run
- Scopri come eseguire il deployment su GKE
- Scopri come eseguire il deployment su Cloud Run Functions
- Scopri come eseguire il deployment su App Engine
- Scopri come risolvere gli errori di build