L'interfaccia a riga di comando Firebase (GitHub) fornisce una serie di strumenti per gestire, visualizzare ed eseguire il deployment nei progetti Firebase.
Prima di utilizzare l'interfaccia a riga di comando Firebase, configurare un progetto Firebase.
Configura o aggiorna l'interfaccia a riga di comando
Installa l'interfaccia a riga di comando Firebase
Puoi installare l'interfaccia a riga di comando Firebase utilizzando un metodo adatto al tuo sistema operativo, al tuo livello di esperienza e/o al tuo caso d'uso. Indipendentemente dal modo in cui installi il CLI, hai accesso alle stesse funzionalità e al comando firebase
.
Windows
Puoi installare l'interfaccia a riga di comando Firebase per Windows utilizzando uno dei seguenti metodi opzioni:
Opzione | Descrizione | Consigliato per… |
---|---|---|
programma binario autonomo | Scarica il programma binario autonomo per l'interfaccia a riga di comando. Poi, puoi accedere all'eseguibile per aprire una shell in cui eseguire il comando firebase .
|
Nuovi sviluppatori Sviluppatori che non utilizzano o non hanno dimestichezza con Node.js |
npm | Utilizza npm (Node Package Manager) per installare l'interfaccia a riga di comando e attivare
il comando firebase disponibile a livello globale.
|
Sviluppatori che utilizzano Node.js |
binario autonomo
Per scaricare ed eseguire il file binario per l'interfaccia a riga di comando di Firebase, segui questi passaggi:
Scarica Programma binario dell'interfaccia a riga di comando Firebase per Windows.
Accedi al file binario per aprire una shell in cui potrai eseguire
firebase
.Continua ad accedere e testare l'interfaccia a riga di comando.
npm
Per utilizzare npm
(il gestore di pacchetti di nodi) per installare il
interfaccia a riga di comando Firebase, segui questi passaggi:
Installa Node.js utilizzando nvm-windows (Node Version Manager). L'installazione di Node.js si installa automaticamente gli strumenti di comando
npm
.Installa l'interfaccia a riga di comando Firebase tramite
npm
eseguendo questo comando:npm install -g firebase-tools
Questo comando abilita il comando
firebase
disponibile a livello globale.Continua ad accedere e testare l'interfaccia a riga di comando.
macOS o Linux
Puoi installare l'interfaccia a riga di comando Firebase per macOS o Linux utilizzando uno dei le seguenti opzioni:
Opzione | Descrizione | Consigliato per… |
---|---|---|
script di installazione automatica | Esegui un singolo comando che rileva automaticamente il tuo sistema operativo,
scarica l'ultima release dell'interfaccia a riga di comando, quindi abilita le
Comando firebase .
|
Nuovi sviluppatori Sviluppatori che non utilizzano o non conoscono Node.js Deployment automatici in un ambiente CI/CD |
programma binario autonomo | Scarica il programma binario autonomo per la CLI. Poi puoi configurare ed eseguire il programma binario in base al tuo flusso di lavoro. | Flussi di lavoro completamente personalizzabili utilizzando l'interfaccia a riga di comando |
npm | Utilizza npm (il gestore di pacchetti dei nodi) per installare l'interfaccia a riga di comando e abilitare
il comando firebase disponibile a livello globale.
|
Gli sviluppatori che utilizzano Node.js |
script di installazione automatica
Per installare l'interfaccia a riga di comando Firebase utilizzando lo script di installazione automatica, segui questi passaggi:
Esegui il seguente comando cURL:
curl -sL https://firebase.tools | bash
Questo script rileva automaticamente il sistema operativo, scarica l'ultima release dell'interfaccia a riga di comando di Firebase, quindi abilita le funzionalità disponibili a livello globale Comando
firebase
.Continua ad accedere e testare l'interfaccia a riga di comando.
Per ulteriori esempi e dettagli sullo script di installazione automatica, consulta al codice sorgente dello script firebase.tools
binario autonomo
Per scaricare ed eseguire il file binario per la CLI Firebase specifico per il tuo sistema operativo, segui questi passaggi:
Scarica il file binario della CLI Firebase per il tuo sistema operativo: macOS | Linux
(Facoltativo) Configura il comando
firebase
disponibile a livello globale.- Rendi eseguibile il file binario eseguendo
chmod +x ./firebase_tools
. - Aggiungi il percorso del file binario al tuo PERCORSO.
- Rendi eseguibile il file binario eseguendo
Continua ad accedere e testare l'interfaccia a riga di comando.
npm
Per utilizzare npm
(il gestore dei pacchetti Node) per installare l'interfaccia a riga di comando Firebase,
segui questi passaggi:
Installa Node.js utilizzando nvm (Node Version Manager).
L'installazione di Node.js si installa automaticamente gli strumenti di comandonpm
.Installa l'interfaccia a riga di comando Firebase tramite
npm
eseguendo questo comando:npm install -g firebase-tools
Questo comando attiva il comando
firebase
disponibile a livello globale.Continua per accedere e testare l'interfaccia a riga di comando.
Accedi e testa l'interfaccia a riga di comando Firebase
Dopo aver installato la CLI, devi autenticarti. Dopodiché puoi confermare autenticazione mediante l'elenco dei progetti Firebase.
Accedi a Firebase utilizzando il tuo Account Google eseguendo il seguente comando:
firebase login
Questo comando connette la tua macchina locale a Firebase e ti garantisce ai progetti Firebase.
Verifica che l'interfaccia a riga di comando sia installata correttamente e che acceda al tuo account elencando i tuoi progetti Firebase. Esegui questo comando:
firebase projects:list
L'elenco visualizzato dovrebbe essere uguale a quello dei progetti Firebase elencati nella console Firebase.
Aggiorna all'ultima versione dell'interfaccia a riga di comando
In genere, è consigliabile utilizzare la versione più aggiornata dell'interfaccia a riga di comando Firebase.
La modalità di aggiornamento della versione dell'interfaccia a riga di comando dipende dal sistema operativo e da come installato l'interfaccia a riga di comando.
Windows
- file binario autonomo: scarica la nuova versione, poi sostituiscila sul tuo sistema
- npm: esegui
npm install -g firebase-tools
macOS
- script di installazione automatica: esegui
curl -sL https://firebase.tools | upgrade=true bash
- standalone binario: scarica il nuovo file versione, quindi sostituirlo sul tuo sistema
- npm: esegui
npm install -g firebase-tools
Linux
- script di installazione automatica: Esegui
curl -sL https://firebase.tools | upgrade=true bash
- file binario autonomo: scarica la nuova versione, quindi sostituiscila sul tuo sistema
- npm: esegui
npm install -g firebase-tools
Utilizzare l'interfaccia a riga di comando con i sistemi CI
La CLI Firebase richiede un browser per completare l'autenticazione, ma è completamente compatibile con CI e altri ambienti headless.
Su un computer con un browser, installa l'interfaccia a riga di comando Firebase.
Avvia il processo di accesso eseguendo questo comando:
firebase login:ci
Visita l'URL fornito, quindi accedi utilizzando un Account Google.
Stampa un nuovo token di aggiornamento. La sessione CLI corrente non sarà interessata.
Memorizza il token di output in modo sicuro, ma accessibile, nel sistema CI.
Utilizza questo token quando esegui i comandi
firebase
. Puoi utilizzare uno dei due le due opzioni seguenti:Opzione 1: archivia il token come variabile di ambiente
FIREBASE_TOKEN
. Il sistema utilizzerà automaticamente il token.Opzione 2: esegui tutti i comandi
firebase
con il flag--token TOKEN
nel sistema CI.
Questo è l'ordine di precedenza per il caricamento dei token: flag, ambiente del progetto Firebase desiderato.
Inizializzare un progetto Firebase
Molte attività comuni eseguite utilizzando l'interfaccia a riga di comando, come il deployment in un progetto Firebase, richiedono una directory del progetto. Imposta una directory del progetto
utilizzando il comando firebase init
. Una directory di un progetto è di solito la stessa
come root di controllo del codice sorgente e, dopo aver eseguito firebase init
,
contiene una configurazione firebase.json
.
Per inizializzare un nuovo progetto Firebase, esegui il seguente comando dalla directory dell'app:
firebase init
Il comando firebase init
ti guida nella configurazione della directory del tuo progetto
e alcuni prodotti Firebase. Durante l'inizializzazione del progetto, la CLI Firebase
ti chiede di completare le seguenti attività:
Seleziona i prodotti Firebase che vuoi configurare nel tuo progetto Firebase.
Questo passaggio richiede di impostare le configurazioni di file specifici per prodotti selezionati. Per ulteriori dettagli su queste configurazioni, consulta la documentazione del prodotto specifico (ad esempio Hosting). Tieni presente che puoi sempre eseguire
firebase init
in un secondo momento per configurare altri prodotti Firebase.Seleziona un progetto Firebase predefinito.
Questo passaggio associa la directory del progetto corrente a un progetto Firebase in modo che i comandi specifici del progetto (come
firebase deploy
) vengono eseguiti progetto Firebase appropriato.È inoltre possibile associare più progetti Firebase (ad esempio un progetto di gestione temporanea e un progetto di produzione) con lo stesso progetto .
Al termine dell'inizializzazione, Firebase crea automaticamente i due seguenti elementi nella directory principale della directory dell'app locale:
Un file di configurazione
firebase.json
che elenca la configurazione del tuo progetto.Un file
.firebaserc
in cui è archiviato il progetto alias.
Il file firebase.json
Il comando firebase init
crea un'istanza
di configurazione firebase.json
nella radice della directory del progetto.
Il file firebase.json
è necessario per
eseguire il deployment delle risorse con l'interfaccia a riga di comando Firebase perché specifica
quali file e impostazioni della directory del progetto vengono eseguiti nel progetto
Firebase. Poiché alcune impostazioni possono essere definite in entrambi i progetti
o la directory
console Firebase, assicurati di risolvere eventuali
conflitti di deployment.
Puoi configurare la maggior parte delle opzioni di Firebase Hosting
direttamente nel file firebase.json
. Tuttavia, per altri
Servizi Firebase di cui è possibile eseguire il deployment con l'interfaccia a riga di comando Firebase,
Il comando firebase init
crea file specifici in cui puoi definire le impostazioni
per questi servizi, ad esempio un file index.js
per Cloud Functions. Puoi
configura anche gli hook di pre-deployment o post-deployment nel file firebase.json
.
Di seguito è riportato un esempio di file firebase.json
con le impostazioni predefinite se selezioni Firebase Hosting, Cloud Firestore e Cloud Functions for Firebase (con le opzioni di lint e di origine TypeScript selezionate) durante l'inizializzazione.
{
"hosting": {
"public": "public",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
]
},
"firestore": {
"rules": "firestore.rules",
"indexes": "firestore.indexes.json"
},
"functions": {
"predeploy": [
"npm --prefix \"$RESOURCE_DIR\" run lint",
"npm --prefix \"$RESOURCE_DIR\" run build"
]
}
}
Sebbene firebase.json
venga utilizzato per impostazione predefinita, puoi passare il flag --config PATH
per specificare un file di configurazione alternativo.
Configurazione per più database Cloud Firestore
Quando esegui firebase init
, il file firebase.json
conterrà una singola chiave firestore
corrispondente al database predefinito del progetto, come mostrato sopra.
Se il progetto contiene più database Cloud Firestore, modifica
firebase.json
file per associare Cloud Firestore Security Rules e
dei file di origine degli indici dei database. Modifica il file con un array JSON con una voce per ogni database.
"firestore": [
{
"database": "(default)",
"rules": "firestore.default.rules",
"indexes": "firestore.default.indexes.json"
},
{
"database": "ecommerce",
"rules": "firestore.ecommerce.rules",
"indexes": "firestore.ecommerce.indexes.json"
}
],
Cloud Functions file da ignorare durante il deployment
Al momento del deployment della funzione, l'interfaccia a riga di comando specifica automaticamente
un elenco di file nella directory functions
da ignorare. Questo
impedisce il deployment nel backend di file estranei che
aumenta la dimensione dei dati del deployment.
L'elenco dei file ignorati per impostazione predefinita, mostrato in formato JSON, è:
"ignore": [
".git",
".runtimeconfig.json",
"firebase-debug.log",
"firebase-debug.*.log",
"node_modules"
]
Se aggiungi i tuoi valori personalizzati per ignore
in firebase.json
, assicurati di conservare (o aggiungere, se mancante) l'elenco di file mostrato sopra.
Gestisci alias di progetto
Puoi associare più progetti Firebase alla stessa directory di progetto.
Ad esempio, potresti utilizzare un progetto Firebase per la gestione temporanea e un altro per la produzione. Utilizzando diversi ambienti di progetto, puoi verificare le modifiche
prima del deployment in produzione. Il comando firebase use
ti consente di cambiare
tra gli alias e creare nuovi alias.
Aggiungere un alias di progetto
Quando selezioni un progetto Firebase durante l'inizializzazione del progetto, al progetto viene assegnato automaticamente l'alias default
. Tuttavia, per consentire l'esecuzione di comandi specifici del progetto su un altro progetto Firebase, ma utilizzando comunque la stessa directory del progetto, esegui il seguente comando dalla directory del progetto:
firebase use --add
Questo comando ti chiede di selezionare un altro progetto Firebase e di assegnare
progetto come alias. Le assegnazioni di alias vengono scritte in un file .firebaserc
all'interno della directory del progetto.
Utilizzare gli alias dei progetti
Per utilizzare gli alias dei progetti Firebase assegnati, esegui uno dei seguenti comandi dalla directory del progetto.
Comando | Descrizione |
---|---|
firebase use |
Visualizza un elenco degli alias attualmente definiti per la directory del progetto |
firebase use \ |
Indica a tutti i comandi di essere eseguiti nel progetto Firebase specificato.
L'interfaccia a riga di comando utilizza questo progetto come "progetto attivo" corrente. |
firebase use --clear |
Cancella il progetto attivo.
Esegui |
firebase use \ |
Rimuove un alias dalla directory del progetto. |
Puoi sostituire il progetto attualmente attivo passando il flag --project
con qualsiasi comando CLI. Ad esempio, puoi impostare la CLI in modo che venga eseguita in un progetto Firebase a cui hai assegnato l'alias staging
. Se vuoi eseguire un singolo comando sul progetto Firebase a cui hai assegnato l'alias prod
, puoi eseguire, ad esempio,
.
Controllo del codice sorgente e alias dei progetti
In generale, devi controllare il file .firebaserc
nel controllo del codice sorgente per consentire al tuo team di condividere gli alias del progetto. Tuttavia, per i progetti open source o per i modelli di partenza, in genere non devi eseguire il check-in del file .firebaserc
.
Se hai un progetto di sviluppo solo per uso personale, puoi passare il flag --project
con ogni comando o eseguire firebase use PROJECT_ID
senza assegnare un alias al progetto Firebase.
Pubblica e testa il progetto Firebase localmente
Puoi visualizzare e testare il tuo progetto Firebase su URL ospitati localmente prima
il deployment in produzione. Se vuoi testare solo determinate funzionalità, puoi usare
un elenco separato da virgole in un flag nel comando firebase serve
.
Esegui questo comando dalla directory radice della directory locale del progetto se vuoi eseguire una delle seguenti attività:
- Visualizza i contenuti statici per l'app ospitata da Firebase.
- Utilizzi Cloud Functions per generare contenuti dinamici per Firebase Hosting e vuoi utilizzare le tue funzioni HTTP di produzione (di cui è stato eseguito il deployment) per emulare Hosting su un URL locale.
firebase serve --only hosting
Emulare il progetto utilizzando funzioni HTTP locali
Esegui uno dei seguenti comandi dalla directory del progetto per emulare il progetto utilizzando funzioni HTTP locali.
Per emulare le funzioni HTTP e l'hosting per i test su URL locali, utilizza uno dei seguenti comandi:
firebase serve
firebase serve --only functions,hosting // uses a flag
Per emulare solo le funzioni HTTP, utilizza il seguente comando:
firebase serve --only functions
Eseguire il test da altri dispositivi locali
Per impostazione predefinita, firebase serve
risponde solo alle richieste provenienti da localhost
. Ciò significa che potrai accedere ai contenuti ospitati dal browser web del tuo computer, ma non da altri dispositivi sulla rete. Se vuoi eseguire il test da
altri dispositivi locali, utilizza il flag --host
, in questo modo:
firebase serve --host 0.0.0.0 // accepts requests to any host
Esegui il deployment in un progetto Firebase
L'interfaccia a riga di comando Firebase gestisce il deployment di codice e asset in Firebase progetto, tra cui:
- Nuove release dei tuoi siti Firebase Hosting
- Cloud Functions for Firebase nuovo, aggiornato o esistente
- Schemi e connettori nuovi o aggiornati per Firebase Data Connect
- Regole per Firebase Realtime Database
- Regole per Cloud Storage for Firebase
- Regole per Cloud Firestore
- Indici per Cloud Firestore
Per eseguire il deployment in un progetto Firebase, esegui questo comando dal progetto directory:
firebase deploy
Facoltativamente, puoi aggiungere un commento a ogni implementazione. Questo commento verrà visualizzato insieme alle altre informazioni di deployment nella Firebase Hosting pagina del progetto. Ad esempio:
firebase deploy -m "Deploying the best new feature ever."
Quando utilizzi il comando firebase deploy
, tieni presente quanto segue:
Per eseguire il deployment delle risorse da una directory di progetto, la directory del progetto deve contenere un file
firebase.json
. Questo file è creato automaticamente per te Comandofirebase init
.Per impostazione predefinita,
firebase deploy
crea una release per tutte le risorse di cui è possibile eseguire il deployment nella directory del progetto. Per eseguire il deployment di funzionalità o servizi Firebase specifici, utilizza il deployment parziale.
Conflitti di deployment per le regole di sicurezza
Per Firebase Realtime Database, Cloud Storage for Firebase e Cloud Firestore, puoi definire le regole di sicurezza nella directory del progetto locale o nella console Firebase.
Un'altra opzione per evitare conflitti di deployment è utilizzare il deployment parziale e definire solo le regole Console Firebase.
Quote di deployment
È possibile (anche se improbabile) che tu possa superare una quota che limita la frequenza o il volume delle operazioni di deployment di Firebase. Ad esempio, quando esegui il deployment di un numero molto elevato di funzioni, potresti ricevere un messaggio di errore HTTP 429 Quota
. Per risolvere questi problemi, prova
a utilizzare il deployment parziale.
Esegui il rollback di un deployment
Puoi eseguire il rollback di un deployment Firebase Hosting dal Firebase Hosting pagina selezionando l'azione Rollback per la release desiderata.
Al momento non è possibile eseguire il rollback delle release delle regole di sicurezza per Firebase Realtime Database, Cloud Storage for Firebase o Cloud Firestore.
Esegui il deployment di servizi Firebase specifici
Se vuoi eseguire il deployment solo di funzionalità o servizi Firebase specifici, puoi utilizzare una
elenco separato da virgole in un flag nel comando firebase deploy
. Ad esempio:
il comando seguente esegue il deployment di contenuti Firebase Hosting
Cloud Storage regole di sicurezza.
firebase deploy --only hosting,storage
La tabella seguente elenca i servizi e le funzionalità disponibili per il deployment parziale. I nomi nei flag corrispondono alle chiavi nel tuo
firebase.json
.
Sintassi dei flag | Servizio o funzionalità di cui è stato eseguito il deployment |
---|---|
--only hosting |
Contenuti in Firebase Hosting |
--only database |
Firebase Realtime Database regole |
--only dataconnect |
Firebase Data Connect schemi e connettori |
--only storage |
Cloud Storage for Firebase regole |
--only firestore |
Regole Cloud Firestore e indici per tutti i database configurati |
--only functions |
Cloud Functions for Firebase (sono possibili versioni più specifiche di questo flag) |
Esegui il deployment di funzioni specifiche
Quando esegui il deployment delle funzioni, puoi scegliere come target funzioni specifiche. Ad esempio:
firebase deploy --only functions:function1
firebase deploy --only functions:function1,functions:function2
Un'altra opzione consiste nel raggruppare le funzioni in gruppi di esportazione
/functions/index.js
. Le funzioni di raggruppamento ti consentono di implementare più funzioni con un unico comando.
Ad esempio, puoi scrivere le seguenti funzioni per definire un groupA
e un
groupB
:
var functions = require('firebase-functions/v1');
exports.groupA = {
function1: functions.https.onRequest(...),
function2: functions.database.ref('\path').onWrite(...)
}
exports.groupB = require('./groupB');
In questo esempio, un file functions/groupB.js
separato contiene funzioni aggiuntive che definiscono in modo specifico le funzioni in groupB
. Ad esempio:
var functions = require('firebase-functions/v1');
exports.function3 = functions.storage.object().onChange(...);
exports.function4 = functions.analytics.event('in_app_purchase').onLog(...);
In questo esempio, puoi eseguire il deployment di tutte le funzioni groupA
eseguendo il seguente comando dalla directory del progetto:
firebase deploy --only functions:groupA
In alternativa, puoi scegliere come target una funzione specifica all'interno di un gruppo eseguendo questo comando :
firebase deploy --only functions:groupA.function1,groupB.function4
Elimina funzioni
L'interfaccia a riga di comando Firebase supporta i seguenti comandi e opzioni per eliminare le funzioni di cui è stato eseguito il deployment in precedenza:
Consente di eliminare tutte le funzioni che corrispondono al nome specificato in tutte le regioni:
firebase functions:delete FUNCTION-1_NAME
Elimina una funzione specificata in esecuzione in una regione non predefinita:
firebase functions:delete FUNCTION-1_NAME --region REGION_NAME
Elimina più di una funzione:
firebase functions:delete FUNCTION-1_NAME FUNCTION-2_NAME
Elimina un gruppo di funzioni specificato:
firebase functions:delete GROUP_NAME
Ignora la richiesta di conferma:
firebase functions:delete FUNCTION-1_NAME --force
Configura attività basate su script di pre-deployment e post-deployment
Puoi collegare gli script shell al comando firebase deploy
per eseguire
di pre-deployment e post-deployment. Ad esempio, uno script di pre-deployment
eseguire il transpile del codice TypeScript in JavaScript e un hook post-deployment potrebbe inviare una notifica
gli amministratori dei nuovi contenuti del sito vengono implementati su Firebase Hosting.
Per configurare gli hook predeploy o postdeploy, aggiungi script bash al file di configurazione firebase.json
. Puoi definire
script brevi direttamente nel file firebase.json
oppure puoi fare riferimento ad altre
file nella directory del progetto.
Ad esempio, lo script seguente è l'espressione firebase.json
per un'attività post-deployment che invia un messaggio Slack al termine del deployment a Firebase Hosting.
"hosting": {
// ...
"postdeploy": "./messageSlack.sh 'Just deployed to Firebase Hosting'",
"public": "public"
}
Il file di script messageSlack.sh
si trova nella directory del progetto e ha il seguente aspetto:
curl -X POST -H 'Content-type: application/json' --data '{"text":"$1"}' \https://SLACK_WEBHOOK_URL
Puoi configurare gli hook predeploy
e postdeploy
per qualsiasi
risorsa che puoi implementare. Tieni presente che l'esecuzione di firebase deploy
attiva tutte le attività di pre-deployment e post-deployment definite nel file firebase.json
. Eseguire solo le attività associate a un account
Servizio Firebase, utilizza i comandi di deployment parziale.
Entrambi gli hook predeploy
e postdeploy
stampano gli stream di output ed errori standard degli script sul terminale. Per i casi di errore, tieni presente quanto segue:
- Se un hook di pre-deployment non viene completato come previsto, il deployment viene annullato.
- Se il deployment non va a buon fine per qualsiasi motivo, gli hook post-deployment non vengono attivati.
Variabili di ambiente
All'interno degli script in esecuzione negli hook di pre-deployment e post-deployment, le variabili di ambiente disponibili:
$GCLOUD_PROJECT
: l'ID del progetto attivo$PROJECT_DIR
: la directory principale contenente il filefirebase.json
$RESOURCE_DIR
: (solo per gli scripthosting
efunctions
) il valore percorso della directory che contiene Hosting o Cloud Functions risorse di cui eseguire il deployment
Gestire più istanze Realtime Database
Un progetto Firebase può avere più istanze Firebase Realtime Database. Di per impostazione predefinita, i comandi dell'interfaccia a riga di comando interagiscono con l'istanza del database default.
Tuttavia, puoi interagire con un'istanza di database non predefinita utilizzando il flag --instance DATABASE_NAME
--instance
:
firebase database:get
firebase database:profile
firebase database:push
firebase database:remove
firebase database:set
firebase database:update
Riferimento ai comandi
Comandi amministrativi dell'interfaccia a riga di comando
Comando | Descrizione |
---|---|
help | Visualizza le informazioni della guida sull'interfaccia a riga di comando o su comandi specifici. |
init | Associa e configura un nuovo progetto Firebase nella directory attuale.
Questo comando crea un'istanza
firebase.json
di configurazione del deployment nella directory attuale. |
login | Autentica l'interfaccia a riga di comando nel tuo account Firebase. Richiede l'accesso a un
browser web. Per accedere alla CLI in ambienti remoti che non consentono l'accesso a localhost , utilizza il flag --no-localhost |
login:ci | Genera un token di autenticazione da utilizzare in ambienti non interattivi ambienti cloud-native. |
esci | Esegue la disconnessione dell'interfaccia a riga di comando dal tuo account Firebase. |
aperta | Apre un browser per le risorse di progetto pertinenti. |
projects:list | Elenca tutti i progetti Firebase a cui hai accesso. |
usa | Imposta il progetto Firebase attivo per l'interfaccia a riga di comando. Gestisce gli alias del progetto. |
Comandi per la gestione dei progetti
Comando | Descrizione | |
---|---|---|
Gestione dei progetti Firebase | ||
projects:addfirebase | Aggiunge risorse Firebase a un progetto Google Cloud esistente. | |
projects:crea | Crea un nuovo progetto Google Cloud e aggiunge le risorse Firebase a il nuovo progetto. | |
projects:list | Elenca tutti i progetti Firebase a cui hai accesso. | |
Gestione delle app Firebase (iOS, Android, web) | ||
apps:create | Crea una nuova app Firebase nel progetto attivo. | |
apps:list | Elenca le app Firebase registrate nel progetto attivo. | |
apps:sdkconfig | Stampa la configurazione dei servizi Google di un'app Firebase. | |
setup:web | Obsoleta. Usa invece apps:sdkconfig e
specifica web come argomento della piattaforma.Stampa la configurazione dei servizi Google di un'app web Firebase. |
|
Gestione degli hash dei certificati SHA (solo Android) | ||
apps:android:sha:crea\ FIREBASE_APP_ID SHA_HASH |
Aggiunge l'hash del certificato SHA specificato all'elemento App Firebase per Android | |
apps:android:sha:elimina \ FIREBASE_APP_ID SHA_HASH |
Elimina l'hash del certificato SHA specificato dall'app Android Firebase specificata. | |
apps:android:sha:list \ FIREBASE_APP_ID |
Elenca gli hash dei certificati SHA per l'app Firebase per Android specificata. |
Deployment e sviluppo locale
Questi comandi ti consentono di eseguire il deployment e interagire con il tuo sito Firebase Hosting.
Comando | Descrizione |
---|---|
deployment | Esegue il deployment di codice e asset dalla directory del progetto al progetto attivo. Per Firebase Hosting, un
firebase.json
il file di configurazione è obbligatorio.
|
serve | Avvia un server web locale con la tua configurazione Firebase Hosting.
Per Firebase Hosting è necessario un
file di configurazione firebase.json . |
App Distribution comandi
Comando | Descrizione |
---|---|
appdistribution:distribute \ --app FIREBASE_APP_ID |
Rende la build disponibile per i tester. |
appdistribution:testers:add | Aggiunge tester al progetto. |
appdistribution:testers:remove | Rimuove i tester dal progetto. |
Comandi App Hosting
Comando | Descrizione |
---|---|
apphosting:backends:create \ --project PROJECT_ID \ --location REGION --app APP_ID |
Crea la raccolta di risorse gestite collegate a un singolo codebase che comprende un backend App Hosting. Se vuoi, specifica un'app web Firebase esistente tramite il relativo ID app Firebase. |
apphosting:backends:get \ BACKEND_ID/ --progetto PROJECT_ID\ --posizione REGION |
Recupera dettagli specifici, incluso l'URL pubblico, di un backend. |
apphosting:backends:list \ --progetto PROJECT_ID |
Recupera un elenco di tutti i backend attivi associati a un progetto. |
firebase apphosting:backends:elimina \ BACKEND_ID/ --progetto PROJECT_ID\ --posizione REGION |
Consente di eliminare un backend dal progetto. |
firebase apphosting:rollouts:create \ BACKEND_ID \ --git_branch BRANCH_NAME \ --git_commit COMMIT_ID |
Crea un'implementazione attivata manualmente. Facoltativamente, specifica l'ultimo commit in un ramo o un commit specifico. Se non vengono fornite opzioni, viene richiesta la selezione da un elenco di rami. |
apphosting:secrets:set
KEY
--project PROJECT_ID \ --location REGION \ --data-file DATA_FILE_PATH |
Archivia il materiale segreto in Secret Manager. Se vuoi, fornisci un percorso file da cui leggere i dati riservati. Imposta su _ per leggere i dati secret dall'input standard.
|
apphosting:secrets:grantaccess
KEY
BACKEND_ID \ --project PROJECT_ID \ --location REGION |
Concede il backend account di servizio al secret fornito, in modo che sia accessibile App Hosting in fase di build o di esecuzione. |
apphosting:secrets:describe
KEY \ --progetto PROJECT_ID |
Recupera i metadati per un secret e le relative versioni. |
firebase apphosting:secrets:access \ KEY[@version]/ --progetto PROJECT_ID |
Accede al valore di un secret in base al secret e alla relativa versione. Il valore predefinito è l'accesso alla versione più recente. |
Comandi Authentication (gestione utenti)
Comando | Descrizione |
---|---|
auth:esportazione | Esporta gli account utente del progetto attivo in un file JSON o CSV. Per per altri dettagli, consulta auth:import e auth:export . |
auth:import | Importa gli account utente da un file JSON o CSV nella cartella progetto. Per ulteriori dettagli, consulta auth:import e auth:export . |
Comandi Cloud Firestore
Comando | Descrizione |
---|---|
firestore:locations |
Elenca le località disponibili per il tuo database Cloud Firestore. |
firestore:databases:create DATABASE_ID |
Crea un'istanza di database in modalità nativa nel tuo progetto Firebase. Il comando accetta i seguenti flag:
|
firestore:databases:list |
Elenca i database nel tuo progetto Firebase. |
firestore:databases:get DATABASE_ID |
Ottieni la configurazione del database per un database specificato nel tuo progetto Firebase. |
firestore:databases:update DATABASE_ID |
Aggiorna la configurazione di un database specificato nel tuo progetto Firebase. È obbligatorio specificare almeno un flag. Il comando accetta i seguenti flag:
|
firestore:databases:delete DATABASE_ID |
Eliminare un database nel progetto Firebase. |
firestore:indexes |
Elenca gli indici di un database nel tuo progetto Firebase. Il comando accetta il seguente flag:
|
firestore:elimina |
Consente di eliminare i documenti nel database del progetto attivo. Con l'interfaccia a riga di comando, puoi eliminare in modo ricorsivo tutti i documenti di una raccolta. Tieni presente che l'eliminazione dei dati Cloud Firestore con l'interfaccia a riga di comando comporta costi di lettura ed eliminazione. Per ulteriori informazioni, consulta Informazioni sulla fatturazione di Cloud Firestore. Il comando utilizza il seguente flag:
|
Comandi Cloud Functions for Firebase
Comando | Descrizione |
---|---|
functions:config:clone | Clona l'ambiente di un altro progetto in Firebase attivo progetto. |
functions:config:get | Recupera i valori di configurazione esistenti di Cloud Functions del progetto attivo. |
functions:config:set | Memorizza i valori di configurazione di runtime di Cloud Functions del progetto attivo. |
functions:config:unset | Rimuove i valori dalla configurazione di runtime del progetto attivo. |
functions:log | Legge i log di Cloud Functions di cui è stato eseguito il deployment. |
Per ulteriori informazioni, fai riferimento all'ambiente per la configurazione iniziale.
Crashlytics comandi
Comando | Descrizione |
---|---|
crashlytics:mappingfile:generateid \ --resource-file=PATH/TO/ANDROID_RESOURCE.XML |
Genera un ID file di mappatura univoco nella risorsa Android specificata (XML). |
crashlytics:mappingfile:upload \ --app=FIREBASE_APP_ID \ --resource-file=PATH/TO/ANDROID_RESOURCE.XML \ PATH/TO/MAPPING_FILE.TXT |
Carica un file di mappatura (TXT) compatibile con Proguard per questa app e lo associa all'ID file di mappatura dichiarato nel file di risorse Android (XML) specificato. |
crashlytics:symbols:upload \ --app=FIREBASE_APP_ID \ PATH/TO/SYMBOLS |
Genera un file di simboli compatibile con Crashlytics per gli arresti anomali delle librerie native su Android e lo carica sui server Firebase. |
Comandi Data Connect
Questi comandi e i relativi casi d'uso sono trattati in maggiore dettaglio nella Guida di riferimento per l'interfaccia a riga di comando di Data Connect.
Comando | Descrizione |
---|---|
dataconnect:services:list | Elenca tutti i servizi Data Connect di cui è stato eseguito il deployment in Firebase progetto. |
dataconnect:sql:diff \ SERVICE_ID |
Per il servizio specificato, mostra le differenze tra una Data Connect e lo schema del tuo database Cloud SQL. |
dataconnect:sql:migrazione \ --forza \ SERVICE_ID |
Esegui la migrazione dello schema del database Cloud SQL in modo che corrisponda allo schema Data Connect locale. |
dataconnect:sql:grant\ --role=ROLE \ --email=EMAIL \ SERVICE_ID |
Concedi il ruolo SQL all'indirizzo email dell'utente o dell'account di servizio specificato.
Per il flag --role , il ruolo SQL da concedere è uno dei seguenti:
owner , writer o reader .
Per il flag --email , fornisci l'indirizzo email del
un account utente o di servizio
a cui concedere il ruolo.
|
dataconnect:sdk:generate | Genera SDK digitati per i tuoi connettori Data Connect. |
Extensions comandi
Comando | Descrizione |
---|---|
Estensione | Mostra informazioni su come utilizzare i comandi Firebase Extensions. Elenca le istanze di estensioni installate nel progetto attivo. |
ext:configure \ EXTENSION_INSTANCE_ID |
Riconfigura i valori parametro di un'istanza dell'estensione in manifest dell'estensione. |
ext:info \ PUBLISHER_ID/EXTENSION_ID |
Stampa le informazioni dettagliate su un'estensione. |
ext:install \ PUBLISHER_ID/EXTENSION_ID |
Aggiunge una nuova istanza di un'estensione nel tuo manifest dell'estensione. |
ext:list | Elenca tutte le istanze dell'estensione installate in un progetto Firebase. Stampa l'ID istanza per ogni estensione. |
ext:uninstall \ EXTENSION_INSTANCE_ID |
Rimuove l'istanza di un'estensione da manifest dell'estensione. |
ext:update \ EXTENSION_INSTANCE_ID |
Consente di aggiornare un'istanza dell'estensione alla versione più recente nel tuo manifest dell'estensione. |
ext:export | Esporta tutte le istanze dell'estensione installate dal progetto al manifest dell'estensione. |
Extensions comando publisher
Comando | Descrizione |
---|---|
ext:dev:init | Inizializza uno scheletro codebase per una nuova estensione nell'ambiente . |
ext:dev:list \ PUBLISHER_ID |
Stampa un elenco di tutte le estensioni caricate da un publisher. |
ext:dev:register | Registra un progetto Firebase come progetto del publisher di estensioni. |
ext:dev:deprecate \ PUBLISHER_ID/EXTENSION_ID \ VERSION_PREDICATE |
Rimuove
le versioni dell'estensione corrispondenti al predicato della versione. Un predicato della versione può essere una singola versione (ad es. 1.0.0 ) o un intervallo di versioni (ad es. >1.0.0 ).Se non viene fornito alcun predicato della versione, tutte le versioni dell'estensione vengono ritirate. |
ext:dev:undeprecate \ PUBLISHER_ID/EXTENSION_ID \ VERSION_PREDICATE |
Rimuove la ritirata
delle versioni dell'estensione che corrispondono al predicato della versione. Un predicato della versione può essere una singola versione (ad es. 1.0.0 ) o un intervallo di versioni (ad es. >1.0.0 ).Se non viene fornito alcun predicato della versione, tutte le versioni dell'estensione vengono ritirate. |
ext:dev:upload \ PUBLISHER_ID/EXTENSION_ID |
Carica una nuova versione di un'estensione. |
ext:dev:usage \ PUBLISHER_ID |
Mostra il numero di installazioni e le metriche di utilizzo per le estensioni caricate da un publisher. |
Hosting comandi
Comando | Descrizione |
---|---|
hosting:disattiva |
Interrompe la gestione del traffico Firebase Hosting per l'account Firebase attivo progetto. Dopo aver eseguito questo comando, nell'URL Hosting del progetto verrà visualizzato il messaggio "Sito non trovato". |
Gestione di Hosting siti | |
firebase hosting:sites:create \ SITE_ID |
Crea un nuovo sito Hosting nel progetto Firebase attivo utilizzando il (Facoltativo) Specifica un'app web Firebase esistente da associare
al nuovo sito passando il seguente flag:
|
firebase hosting:sites:delete \ SITE_ID |
Elimina il sito Hosting specificato La CLI mostra un messaggio di conferma prima di eliminare il sito. (Facoltativo) Salta la richiesta di conferma passando il metodo
seguenti flag: |
firebase hosting:sites:get \ SITE_ID |
Recupera le informazioni sul sito Hosting specificato |
firebase hosting:sites:list |
Elenca tutti i siti Hosting per il progetto Firebase attivo |
Gestione dei canali di anteprima | |
firebase hosting:channel:create \ CHANNEL_ID |
Crea un nuovo canale di anteprima in
predefinito Hosting sito utilizzando il valore specificato
Questo comando non viene eseguito nel canale. |
firebase hosting:channel:delete \ CHANNEL_ID |
Elimina il canale di anteprima specificato Non puoi eliminare il canale dal vivo di un sito. |
firebase hosting:channel:deploy \ CHANNEL_ID |
Esegue il deployment dei contenuti e della configurazione Hosting nel canale di anteprima specificato Se il canale di anteprima non esiste ancora, questo comando lo crea nel sito Hosting predefinito prima di eseguire il deployment sul canale. |
firebase hosting:channel:list | Elenca tutti i canali (incluso il canale "dal vivo") nella sito predefinito Hosting |
firebase hosting:channel:open \ CHANNEL_ID |
Apre un browser all'URL del canale specificato o restituisce l'URL se non è possibile aprire in un browser |
Clonazione delle versioni | |
firebase hosting:clone \ SOURCE_SITE_ID:SOURCE_CHANNEL_ID/ TARGET_SITE_IDTARGET_CHANNEL_ID |
Clona la versione di cui è stato eseguito il deployment più recente nell'"origine" specificata canale al "target" specificato canale Questo comando esegue anche il deployment nel canale "target" specificato. Se il canale "target" non esiste ancora, questo comando crea un nuovo canale di anteprima nel sito Hosting "target" prima di eseguire il deployment nel canale. |
firebase hosting:clone \ SOURCE_SITE_ID:@VERSION_ID \ TARGET_SITE_ID:TARGET_CHANNEL_ID |
Clona la versione specificata nel canale "target" specificato Questo comando esegue anche il deployment nel "target" specificato canale. Se il canale "target" non esiste ancora, questo comando crea un nuovo canale di anteprima nel sito Hosting "target" prima di eseguire il deployment nel canale. Puoi trovare |
Comandi Realtime Database
Tieni presente che puoi creare l'istanza Realtime Database iniziale predefinita nella console Firebase o utilizzando il flusso di lavoro firebase init
generale o il flusso firebase init database
specifico.
Una volta create, puoi gestirle come descritto in Gestire più istanze Realtime Database.
Comando | Descrizione |
---|---|
database:get | Recupera i dati dal database del progetto attivo e li mostra come JSON. Supporta l'esecuzione di query sui dati indicizzati. |
database:instances:create | Crea un'istanza di database con un nome dell'istanza specificato. Accetta
l'opzione --location per creare un database in un
regione. Per i nomi delle regioni da utilizzare con questa opzione, vedi
seleziona le località per il progetto.
Se non esiste alcuna istanza di database per il progetto attuale, ti viene richiesto
eseguire il flusso firebase init per creare un'istanza.
|
database:instances:list | Elenca tutte le istanze di database per questo progetto. Accetta i
Opzione --location per elencare i database in una specifica
regione. Per i nomi delle regioni da utilizzare con questa opzione, consulta
Selezionare le località per il progetto. |
database:profile | Crea un profilo delle operazioni sul database del progetto attivo. Per per altri dettagli, consulta Realtime Database tipi di operazioni. |
database:push | Invia nuovi dati a un elenco in una posizione specificata nell'elenco nel database del progetto. Riceve input da un file, da STDIN o da un argomento della riga di comando. |
database:rimuovi | Consente di eliminare tutti i dati in una posizione specificata nel database del progetto attivo. |
database:set | Sostituisce tutti i dati in una posizione specificata nel database del progetto attivo. Prende l'input da un file, da STDIN o da un argomento della riga di comando. |
database:update | Esegue un aggiornamento parziale in una posizione specificata nel database del progetto attivo. Prende l'input da un file, STDIN o da una riga di comando . |
Comandi Remote Config
Comando | Descrizione |
---|---|
remoteconfig:versions:list \ --limit NUMBER_OF_VERSIONS |
Elenca le dieci versioni più recenti del modello. Specifica
0 per restituire tutte le versioni esistenti o, facoltativamente, di
passa l'opzione --limit per limitare il numero
le versioni secondarie restituite. |
remoteconfig:get \ --v, version_number VERSION_NUMBER --o, output FILENAME |
Ottiene il modello per versione (il valore predefinito è la versione più recente)
e restituisce i gruppi di parametri, i parametri e i nomi delle condizioni.
in una tabella. Se vuoi, puoi scrivere l'output in un file specificato con -o, FILENAME . |
remoteconfig:rollback \ --v, numero_versione VERSION_NUMBER --forza |
Esegue il rollback di Remote Config modello a una versione precedente specificata
numero predefinito o viene impostata la versione precedente immediata (versione corrente -1). A meno che non venga passato --force , viene richiesto S/N
prima di procedere con il rollback. |