获取我们在 Firebase 峰会上发布的所有信息,了解 Firebase 可如何帮助您加快应用开发速度并满怀信心地运行应用。了解详情

Gerencie canais, lançamentos e versões ao vivo e de visualização para seu site

O Firebase Hosting fornece ferramentas por meio do Firebase console e da Firebase CLI para gerenciar os canais, lançamentos e versões do seu site do Hosting.

Visão geral da infraestrutura de hospedagem

Entender a infraestrutura de hospedagem ajuda você a entender as opções de gerenciamento descritas nesta página.

Todo projeto Firebase possui um site de hospedagem padrão com acesso a todos os recursos do projeto (bancos de dados, autenticação, funções, etc.). Um site contém um ou mais canais , onde cada canal está associado a uma URL que veicula um conteúdo específico e uma configuração de Hospedagem.

uma imagem da hierarquia do Firebase Hosting

Cada site de hospedagem tem um canal "ao vivo" que veicula conteúdo e uma configuração de hospedagem em (1) os subdomínios provisionados pelo Firebase do site ( SITE_ID .web.app e SITE_ID .firebaseapp.com ) e (2) quaisquer domínios personalizados conectados . Você também pode, opcionalmente, criar canais de "visualização" que veiculam seu próprio conteúdo e configuração em "URLs de visualização" temporários e compartilháveis ​​( SITE_ID -- CHANNEL_ID - RANDOM_HASH .web.app ).

O conteúdo e a configuração servidos por cada canal são empacotados em um objeto de versão que possui um identificador exclusivo. Quando você implanta em seu site, o Firebase cria um objeto de lançamento que aponta para uma versão específica. Uma versão contém metadados sobre a implantação, como quem implantou e quando implantou.

No painel de hospedagem do seu projeto Firebase, você pode ver um histórico completo dos lançamentos do seu canal ao vivo em uma tabela Histórico de lançamentos . Se você tiver vários sites de hospedagem , clique em Exibir no site desejado para ver seu histórico de lançamento. Se você tiver canais de visualização, eles também serão exibidos no painel de hospedagem.

Gerenciar as configurações de um canal

Para cada canal do seu site, você pode controlar suas configurações. Algumas configurações, como a expiração do canal, são aplicáveis ​​apenas para canais de visualização.

Limite o número de lançamentos para manter

Sempre que você implanta em um canal (e cria uma versão), o Hosting mantém a versão associada à versão anterior no armazenamento do Hosting do seu projeto. Você pode definir o número de lançamentos a serem mantidos para cada canal em seu projeto, tanto canais ao vivo quanto canais de visualização.

  • Por que a Hosting mantém versões anteriores?
    Para o seu canal ao vivo, manter as versões anteriores permite reverter para uma versão anterior do seu site, se necessário. Para seus canais de visualização, a reversão ainda não está disponível.

  • Por que limitar o número de lançamentos a serem mantidos?
    Este recurso pode ajudá-lo a controlar o nível de uso do armazenamento de hospedagem do seu projeto , pois o conteúdo de versões anteriores é mantido neste armazenamento. Você pode monitorar o armazenamento do Hosting na guia Armazenamento no console.

  • O que acontece quando você limita os lançamentos para manter?
    Quando você define um limite para os lançamentos a serem mantidos, o conteúdo de todos os lançamentos acima do limite definido é agendado para exclusão, começando pelos lançamentos mais antigos primeiro .

Veja como definir o limite de armazenamento de lançamento para um canal:

  1. No console do Firebase , acesse a caixa de diálogo liberar configuração de armazenamento:

    • Para o seu canal ao vivo
      Na tabela Release History do seu site, clique em e selecione Release storage settings .

    • Para qualquer canal de visualização
      Na linha do canal de visualização, clique em e selecione Configurações do canal .

  2. Insira o número de lançamentos que deseja manter e clique em Salvar .

Definir a expiração de um canal de visualização

Por padrão, um canal de visualização expira 7 dias a partir da data de criação, mas o canal ao vivo do seu site nunca expira.

Quando um canal de visualização expira, o canal, juntamente com seus lançamentos e versões associadas, é agendado para exclusão em 24 horas. A URL de visualização associada também é desativada. Uma exceção a essa exclusão de versão é se uma versão estiver associada a outro lançamento (isso acontece, por exemplo, se você clonar uma versão de um canal para outro dentro do mesmo site ).

A hospedagem oferece suporte a duas maneiras diferentes de controlar a expiração de um canal:

  • Console do Firebase
    Na linha do canal de visualização, clique em e selecione Configurações do canal . Insira a data e a hora do vencimento.

  • Firebase CLI
    Ao implantar em seu canal de visualização, passe o --expires DURATION , por exemplo:

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

    A expiração pode ser de até 30 dias a partir da data de implantação. Use h para horas, d para dias e w para semanas (por exemplo, 12h , 7d , 2w , respectivamente).

Clone uma versão de um canal para outro

Você pode clonar uma versão implantada de um canal para outro canal. Você pode clonar em canais ao vivo ou de visualização, em sites de hospedagem ou até mesmo em projetos do Firebase.

O comando clone também é implantado no canal "destino" para que o conteúdo e a configuração do Hosting clonado sejam exibidos automaticamente no URL associado do canal "destino".

Esse recurso é útil para rastreamento de versão ou se você deseja ter certeza de que está implantando o conteúdo exato que visualizou e/ou testou em outro canal. aqui estão alguns exemplos:

  • Clone de um canal de visualização "QA" para o canal ao vivo do seu site (ao vivo!)

  • Clone do canal ao vivo do seu site para um canal de visualização de "depuração" (como antes de uma reversão)

  • Clone de um canal em seu projeto Firebase de "preparação" para um canal de visualização em seu projeto Firebase "prod"

Para clonar uma versão, execute o seguinte comando em qualquer diretório:

firebase hosting:clone SOURCE_SITE_ID:SOURCE_CHANNEL_ID TARGET_SITE_ID:TARGET_CHANNEL_ID

Substitua cada espaço reservado pelo seguinte:

  • SOURCE_SITE_ID e TARGET_SITE_ID : Estes são os IDs dos sites de hospedagem que contêm os canais.

    • Para seu site de hospedagem padrão, use o ID do projeto Firebase.
    • Você pode especificar sites de hospedagem que estão no mesmo projeto do Firebase ou até mesmo em diferentes projetos do Firebase.
  • SOURCE_CHANNEL_ID e TARGET_CHANNEL_ID : Estes são os identificadores dos canais.

    • Para um canal ao vivo, use live como o ID do canal.
    • Se o canal "destino" especificado ainda não existir, este comando criará o canal antes de implantá-lo.

Reverta para uma versão anterior do seu site

Você pode reverter para servir uma versão anterior do canal ao vivo do seu site. Essa ação é útil se sua versão atual tiver um problema e você quiser reverter para fornecer uma versão de trabalho conhecida de seu site. Ou talvez seu site tenha servido conteúdo temporário para um feriado ou evento especial, mas agora você deseja reverter para servir seu conteúdo "regular".

Ao reverter, você cria uma nova versão que oferece a mesma versão de conteúdo de uma versão anterior. Em sua tabela Histórico de versões, ambas as versões listarão o mesmo identificador de versão.

Veja como reverter:

  1. No console do Firebase , na tabela Release History do seu site, passe o mouse sobre a entrada da versão anterior para a qual deseja reverter.

  2. Clique e selecione Reverter .

Excluir manualmente uma liberação

Talvez seja necessário excluir manualmente um lançamento do seu canal ao vivo para liberar armazenamento do Hosting para seu projeto. Você só pode excluir versões anteriores, não a versão que está sendo veiculada atualmente em seu site ao vivo.

Quando você exclui uma versão, na verdade está excluindo seu conteúdo, que está agendado para exclusão em 24 horas. O próprio objeto de liberação é mantido para que você ainda possa ver seus metadados (quem implantou e quando implantou).

Veja como excluir um lançamento:

  1. No console do Firebase , na tabela Release History do seu site, passe o mouse sobre a entrada da versão anterior que você deseja excluir.

  2. Clique e selecione Excluir .

Excluir manualmente um canal de visualização

Você pode excluir um canal de visualização, mas não pode excluir o canal ao vivo do seu site.

Quando você exclui um canal de visualização, o canal, juntamente com seus lançamentos e versões associadas, são agendados para exclusão em 24 horas. A URL de visualização associada também é desativada. Uma exceção à exclusão de versão é se uma versão estiver associada a outro lançamento (isso acontece, por exemplo, se você clonar uma versão de um canal para outro dentro do mesmo site ).

A hospedagem oferece suporte a duas maneiras diferentes de excluir um canal de visualização:

  • Console do Firebase
    Na linha do canal de visualização, clique em e selecione Excluir canal . Confirme a exclusão.

  • Firebase CLI
    Execute o seguinte comando em qualquer diretório:

    firebase hosting:channel:delete CHANNEL_ID

Comandos CLI para canais de visualização e clonagem

Comandos para canais de visualização

Todos os comandos para canais de visualização oferecem suporte a destinos de implantação se você tiver vários sites de hospedagem .

Comando Descrição
firebase hosting:channel:create CHANNEL_ID

Cria um novo canal de visualização no site de hospedagem padrão usando o CHANNEL_ID especificado

Este comando não é implantado no canal.

firebase hosting:channel:delete CHANNEL_ID

Exclui o canal de visualização especificado

Você não pode excluir o canal ao vivo de um site.

firebase hosting:channel:deploy CHANNEL_ID

Implanta seu conteúdo e configuração de hospedagem no canal de visualização especificado

Se o canal de visualização ainda não existir, este comando cria o canal no site de hospedagem padrão antes de implantar no canal.

firebase hosting:channel:list Lista todos os canais (incluindo o canal "ao vivo") no site de hospedagem padrão
firebase hosting:channel:open CHANNEL_ID Abre um navegador para o URL do canal especificado ou retorna o URL se a abertura em um navegador não for possível

Comandos para clonagem de versão

Comando Descrição
firebase hosting:clone \
SOURCE_SITE_ID : SOURCE_CHANNEL_ID \
TARGET_SITE_ID : TARGET_CHANNEL_ID

Clona a versão implantada mais recentemente no canal de "origem" especificado para o canal de "destino" especificado

Este comando também implanta no canal "destino" especificado. Se o canal "destino" ainda não existir, este comando criará um novo canal de visualização no site de hospedagem "destino" antes de implantar no canal.

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

Clona a versão especificada para o canal "destino" especificado

Este comando também implanta no canal "destino" especificado. Se o canal "destino" ainda não existir, este comando criará um novo canal de visualização no site de hospedagem "destino" antes de implantar no canal.

Você pode encontrar o VERSION_ID no painel de hospedagem do Firebase console.