Gestisci live e Visualizzare l'anteprima di canali, uscite e versioni per il tuo sito

Firebase Hosting fornisce strumenti sia tramite la console Firebase sia tramite l'interfaccia a riga di comando Firebase per gestire i canali, le release e le versioni del tuo sito Hosting.

Panoramica dell'infrastruttura Hosting

Comprendere l'infrastruttura Hosting ti aiuta a comprendere il le opzioni di gestione descritte in questa pagina.

Ogni progetto Firebase ha un sito Hosting predefinito con accesso a tutti le risorse del progetto (database, autenticazione, funzioni e così via). Un sito contiene uno o più canali, ognuno dei quali è associato a un URL che pubblica contenuti specifici e una configurazione Hosting.

un&#39;immagine di <span class=Gerarchia di Firebase Hosting" /&gt;

Ogni sito Hosting ha un canale "live" che pubblica contenuti e una configurazione Hosting in (1) i sottodomini di Firebase di cui è stato eseguito il provisioning per il sito (SITE_ID.web.app e SITE_ID.firebaseapp.com) e (2) eventuali domini personalizzati collegati. Se vuoi, puoi anche creare &quot;preview&quot; canali che pubblicano i propri contenuti e la propria configurazione a livello temporaneo, "URL anteprima" condivisibili (SITE_ID--CHANNEL_ID-RANDOM_HASH.web.app).

I contenuti e la configurazione forniti da ciascun canale sono pacchettizzati in un version a cui è associato un identificatore univoco. Quando esegui il deployment sul tuo sito, Firebase crea un oggetto release che punta a una versione specifica. R contiene i metadati sul deployment, ad esempio chi ha eseguito il deployment e quando di cui è stato eseguito il deployment.

Dal progetto Firebase Dashboard Hosting, puoi vedere la cronologia completa delle uscite del tuo canale in diretta in un Tabella Cronologia release. Se hai più siti Hosting, fai clic su Visualizza accanto al sito che ti interessa per visualizzarne la cronologia delle release. Se hai dei canali di anteprima, vengono visualizzati anche nella dashboard Hosting.

Gestire le impostazioni di un canale

Puoi controllare le impostazioni di ogni canale del tuo sito. Alcune impostazioni, ad esempio scadenza del canale, sono applicabili solo ai canali in anteprima.

Limita il numero di release da conservare

Ogni volta che esegui il deployment in un canale (e crei una release), Hosting mantiene versione associata alla release precedente nell'elemento Hosting del progetto archiviazione. Puoi impostare il numero di uscite da conservare per ogni canale nei tuoi sia dal vivo che in anteprima.

  • Perché Hosting conserva le release precedenti?
    Per il tuo canale in diretta, conservare le release precedenti ti consente di esegui il rollback a una versione precedente del sito, se necessario. Per i canali di anteprima, il rollback non è ancora disponibile.

  • Perché limitare il numero di release da conservare?
    Questa funzionalità può aiutarti a controllare il livello di utilizzo dello spazio di archiviazione Hosting del progetto, poiché i contenuti delle release precedenti vengono conservati in questo spazio. Puoi monitorare Hosting di spazio di archiviazione da Scheda Spazio di archiviazione nella console.

  • Cosa succede se limiti le release da conservare?
    Quando imposti un limite di conservazione per le release, vengono conservati i contenuti di tutte le release che superano è stata pianificata l'eliminazione del limite impostato, iniziando con le release meno recenti.

Ecco come impostare il limite di spazio di archiviazione per le release di un canale:

  1. Nella Console Firebase, accedi alla finestra di dialogo dell'impostazione di archiviazione release:

    • Per il tuo canale live
      Nella tabella Cronologia delle release relativa al tuo sito, fai clic su , poi seleziona Impostazioni di archiviazione release.

    • Per qualsiasi canale di anteprima
      Nella riga relativa al canale di anteprima, fai clic su e poi seleziona Impostazioni canale.

  2. Inserisci il numero di uscite che vuoi conservare, poi fai clic su Salva.

Impostare la scadenza di un canale di anteprima

Per impostazione predefinita, un canale in anteprima scade 7 giorni dopo la data di creazione, ma canale live non scadrà mai.

Quando un canale in anteprima scade, il canale, le relative uscite e associate, sono pianificate per l'eliminazione entro 24 ore. La viene disattivato anche l'URL di anteprima associato. Un'eccezione l'eliminazione della versione è se una versione è associata a un'altra release (questo succede, ad esempio, se cloni una versione da un canale a un altro nello stesso sito).

Hosting supporta due diversi modi per controllare la scadenza di un canale:

  • Console Firebase
    Nella riga relativa al canale di anteprima, fai clic su , quindi seleziona Impostazioni del canale. Inserisci la data e l'ora di scadenza.

  • Interfaccia a riga di comando Firebase
    Quando esegui il deployment nel tuo canale di anteprima, trasmetti il --expires DURATION, ad esempio:

    firebase hosting:channel:deploy new-awesome-feature --expires 7d

    La scadenza può essere fino a 30 giorni dalla data di deployment. Utilizza h per ore, d per i giorni e w per le settimane (ad esempio, 12h, 7d, 2w, rispettivamente).

Clonare una versione da un canale all'altro

Puoi clonare una versione di cui è stato eseguito il deployment da un canale a un altro. Tu può clonare tra i canali dal vivo o in anteprima, su Hosting siti o anche tra progetti Firebase.

Anche il comando clone viene eseguito nel "target" in modo che i file clonati I contenuti e la configurazione Hosting vengono pubblicati automaticamente a livello di "target" all'URL associato del canale.

Questa funzione è utile per il monitoraggio delle versioni o per avere la certezza che stai implementando i contenuti esatti che hai visualizzato e/o testato su un altro canale. Ecco alcuni esempi:

  • Clonare da un "QA" canale in anteprima sul canale live del tuo sito (trasmissione dal vivo)

  • Clona il canale dal vivo del tuo sito a un "debug" canale di anteprima (ad es. prima di un rollback)

  • Clona da un canale nel progetto Firebase "staging" a un canale di anteprima nel progetto Firebase "prod"

Per clonare una versione, esegui questo comando da qualsiasi directory:

firebase hosting:clone SOURCE_SITE_ID:SOURCE_CHANNEL_ID TARGET_SITE_ID:TARGET_CHANNEL_ID

Sostituisci ogni segnaposto con quanto segue:

  • SOURCE_SITE_ID e TARGET_SITE_ID: sono gli ID dei Hosting siti che contengono i canali.

    • Per il sito Hosting predefinito, utilizza l'ID progetto Firebase.
    • Puoi specificare Hosting siti che si trovano nello stesso progetto Firebase oppure anche in progetti Firebase diversi.
  • SOURCE_CHANNEL_ID e TARGET_CHANNEL_ID: queste sono le identificatori per i canali.

    • Per un canale dal vivo, usa live come ID canale.
    • Se il "target" specificato il canale non esiste ancora. Questo comando crea del canale prima di eseguirne il deployment.

Esegui il rollback a una versione precedente del sito

Puoi eseguire il rollback per pubblicare una versione precedente del canale live del sito. Questa azione è utile se la release corrente presenta un problema e vuoi eseguire il rollback per pubblicare una versione funzionante nota del tuo sito. Oppure, il tuo sito potrebbe aver pubblicato contenuti temporanei per una festività o un evento speciale, ma ora vuoi ripristinare i contenuti "normali".

Con il rollback, crei una nuova release che pubblica la stessa versione dei contenuti di una release precedente. Nella tabella Cronologia delle release, entrambe le release elencherà lo stesso identificatore di versione.

Ecco come eseguire il rollback:

  1. Nella Console Firebase, nella tabella Cronologia delle release del tuo sito, passa il mouse sopra la precedente la voce di release a cui vuoi eseguire il rollback.

  2. Fai clic su , quindi seleziona Ripristino.

Eliminare manualmente una release

Potresti dover eliminare manualmente una release dal tuo canale live per liberare Hosting spazio di archiviazione per il tuo progetto. Tu può eliminare solo le release precedenti, non quella attualmente in pubblicazione sul tuo sito pubblicato.

Quando elimini un'uscita, ne elimini i contenuti, ovvero pianificata l'eliminazione entro 24 ore. L'oggetto release stesso viene mantenuto di cui puoi ancora vedere i metadati (chi ha eseguito il deployment e quando).

Ecco come eliminare una release:

  1. Nella Console Firebase, nella tabella Cronologia delle release del tuo sito, passa il mouse sopra la precedente la voce di release che vuoi eliminare.

  2. Fai clic su , poi seleziona Elimina.

Eliminare manualmente i file

In Firebase Hosting, il modo principale per eliminare i file selezionati da un sito di cui è stato eseguito il deployment, è quello di eliminare i file localmente e quindi rieseguire il deployment.

Eliminare manualmente un canale di anteprima

Puoi visualizzare l'anteprima dei tuoi canali facendo clic sul canale che ti interessa. In questa visualizzazione puoi vedere, eliminare e ripristinare i deployment più recenti e legati al canale specifico. Puoi eliminare un canale di anteprima, ma non puoi eliminare il canale live del tuo sito.

Quando elimini un canale in anteprima, il canale insieme alle relative uscite e associate, sono pianificate per l'eliminazione entro 24 ore. Anche l'URL di anteprima associato viene disattivato. Un'eccezione l'eliminazione della versione è se una versione è associata a un'altra release (questo succede, ad esempio, se cloni una versione da un canale a un altro nello stesso sito).

Hosting supporta due modi diversi per eliminare un canale Anteprima:

  • Console Firebase
    Nella riga relativa al canale di anteprima, fai clic su , quindi seleziona Elimina canale. Conferma l'eliminazione.

  • Firebase CLI
    Esegui il seguente comando da qualsiasi directory:

    firebase hosting:channel:delete CHANNEL_ID

Comandi dell'interfaccia a riga di comando per l'anteprima dei canali e la clonazione

Comandi per i canali in anteprima

Tutti i comandi per i canali di anteprima supportano le destinazioni di deployment, se hai più siti Hosting.

Comando Descrizione
firebase hosting:channel:create CHANNEL_ID

Crea un nuovo canale di anteprima in predefinito Hosting sito utilizzando il valore specificato CHANNEL_ID

Non viene eseguito il deployment di questo comando sul canale.

firebase hosting:channel:delete CHANNEL_ID

Elimina il canale di anteprima specificato

Non puoi eliminare il canale live di un sito.

firebase hosting:channel:deploy CHANNEL_ID

Esegue il deployment dei contenuti e la configurazione Hosting nell'istanza specificata anteprima del canale

Se il canale di anteprima non esiste ancora, questo comando crea la canale nel sito predefinito Hosting prima del 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

Comandi per la clonazione delle versioni

Comando Descrizione
firebase hosting:clone \
SOURCE_SITE_ID:SOURCE_CHANNEL_ID \
TARGET_SITE_ID:TARGET_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 "target" specificato canale. Se "target" il canale non esiste ancora, questo comando crea un nuovo canale di anteprima nella sezione "target" Hosting sito prima del deployment in del canale.

firebase hosting:clone \
SOURCE_SITE_ID:@VERSION_ID \
TARGET_SITE_ID:TARGET_CHANNEL_ID

Clona la versione specificata nel "target" specificato canale

Questo comando esegue anche il deployment nel canale "target" specificato. Se "target" il canale non esiste ancora, questo comando crea un nuovo canale di anteprima nella sezione "target" Hosting sito prima del deployment in del canale.

Puoi trovare VERSION_ID nel Dashboard Hosting della console Firebase.