Questa pagina spiega come eseguire il deployment delle applicazioni su Firebase utilizzando Cloud Build. Se non hai mai utilizzato Cloud Build, leggi prima le guide di avvio rapido e la panoramica della configurazione di compilazione.
Prima di iniziare
-
Enable the Cloud Build, Firebase, and Resource Manager APIs.
Per eseguire i comandi
gcloud
in questa pagina, installa 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 da implementare in Firebase, puoi creare un progetto predefinito installando e inizializzando Firebase.
Autorizzazioni IAM richieste
Apri la pagina IAM nella console Google Cloud :
Seleziona il progetto e fai clic su Apri.
Nella tabella delle autorizzazioni, individua l'email dell'account di servizio che stai utilizzando per la build e fai clic sull'icona a forma di matita.
Aggiungi i ruoli
Cloud Build Service Account
(roles/cloudbuild.builds.builder
),Firebase Admin
(roles/firebase.admin
) eAPI Keys Admin
(roles/serviceusage.apiKeysAdmin
) al account di servizio.Fai clic su Salva.
Utilizzo dell'immagine Docker firebase
Cloud Build fornisce un'immagine 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 su Firebase:
Crea un file di configurazione della build denominato
cloudbuild.yaml
ocloudbuild.json
, dove 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-tools
utilizzando
name: "us-docker.pkg.dev/firebase-cli/us/firebase":x.y.z
Avvia la build utilizzando il file di configurazione della build:
gcloud builds submit --region=REGION --config CONFIG_FILE_PATH SOURCE_DIRECTORY
Dove:
- 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 tuo software su 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 comando
firebase deploy
, dove PROJECT_ID è il tuo ID progetto Google Cloud :YAML
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 console Google Cloud :
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 l'attivatore.
Seleziona l'evento del repository per avviare il trigger.
Seleziona il repository che contiene 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 che hai 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 un deployment su Firebase.
Per saperne di più sulla creazione di trigger Cloud Build, consulta Creare e gestire i trigger di build.
Codice di esempio
Per visualizzare un esempio di codice per il deployment su Firebase utilizzando Cloud Build, vai a deploy-firebase-example.
Passaggi successivi
- Scopri come eseguire 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 i problemi relativi alle build