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
Compreender a infraestrutura de hospedagem ajuda você a entender as opções de gerenciamento descritas nesta página.
Todo projeto do Firebase tem um site do Hosting 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 um URL que veicula conteúdo específico e uma configuração de hospedagem.
Todo site do Hosting tem um canal "ao vivo" que veicula conteúdo e uma configuração do Hosting em (1) os subdomínios provisionados pelo Firebase do site ( SITE_ID .web.app
e SITE_ID .firebaseapp.com
) e (2) qualquer domínio personalizado conectado . 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árias 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 foi implantado.
No painel de hospedagem do seu projeto do Firebase , você pode ver um histórico completo dos lançamentos do seu canal ao vivo em uma tabela do 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çamentos. 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 expiração do canal, são aplicáveis apenas a canais de visualização.
Limitar o número de versões a serem mantidas
Cada vez 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 de visualização.
Por que a Hosting mantém as versões anteriores?
Para 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?
Esse recurso pode ajudá-lo a controlar o nível de uso do armazenamento do Hosting do seu projeto , pois o conteúdo das versões anteriores é mantido nesse armazenamento. Você pode monitorar seu armazenamento de hospedagem na guia Armazenamento no console.O que acontece quando você limita os lançamentos para manter?
Quando você define um limite para manter as versões, o conteúdo de todas as versões acima do limite definido é agendado para exclusão, começando com as versões mais antigas .
Veja como definir o limite de armazenamento de lançamento para um canal:
No console do Firebase , acesse a caixa de diálogo de configuração de armazenamento da versão:
Para o seu canal ao vivo
Na tabela Histórico de lançamento do seu site, clique em e selecione Configurações de armazenamento de lançamento .Para qualquer canal de visualização
Na linha do canal de visualização, clique em e selecione Configurações do canal .
Insira o número de versões 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, são programados para exclusão em 24 horas. O URL de visualização associado também é desativado. Uma exceção a essa exclusão de versão é se uma versão estiver associada a outra versão (isso acontece, por exemplo, se você clonar uma versão de um canal para outro no 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 hora para expiração.CLI do Firebase
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 ew
para semanas (por exemplo,12h
,7d
,2w
, respectivamente).
Clonar uma versão de um canal para outro
Você pode clonar uma versão implantada de um canal para um canal diferente. Você pode clonar em canais ao vivo ou de visualização, em sites do Hosting 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 na URL associada 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 (indo 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 "staging" do Firebase para um canal de visualização em seu projeto "prod" do Firebase
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 : Esses são os IDs dos sites de hospedagem que contêm os canais.
- Para seu site do Hosting padrão, use o ID do projeto do Firebase.
- Você pode especificar sites do Hosting que estão no mesmo projeto do Firebase ou até mesmo em projetos diferentes 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 cria o canal antes de implantá-lo.
- Para um canal ao vivo, use
Quando você clona uma versão de um canal para outro no mesmo site do Hosting , o Firebase cria um novo objeto de lançamento que aponta exatamente para a mesma versão . Você verá duas versões em seu site de hospedagem que apontam para a mesma versão (conforme identificado pelo ID da versão).
No entanto, se você clonar uma versão para um canal em um site diferente do Hosting (ou em um projeto diferente do Firebase), o Firebase criará uma nova versão e uma nova versão (conforme identificado por um código de versão diferente).
Reverter para uma versão anterior do seu site
Você pode reverter para veicular 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 veicular uma versão de trabalho conhecida do seu site. Ou talvez seu site tenha veiculado conteúdo temporário para um feriado ou evento especial, mas agora você deseja reverter para veicular seu conteúdo "normal".
Ao reverter, você cria uma nova versão que atende à mesma versão de conteúdo de uma versão anterior. Em sua tabela de histórico de lançamentos , ambos os lançamentos listarão o mesmo identificador de versão.
Veja como reverter:
No console do Firebase , na tabela Histórico de lançamentos do seu site, passe o cursor sobre a entrada da versão anterior para a qual você deseja reverter.
Clique
e selecione Reverter .
Excluir manualmente uma versão
Talvez seja necessário excluir manualmente uma versão 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 no seu site ativo.
Ao excluir uma versão, na verdade você está excluindo seu conteúdo, que está programado para exclusão em 24 horas. O próprio objeto de lançamento é mantido para que você ainda possa ver seus metadados (quem implantou e quando implantou).
Veja como excluir uma versão:
No console do Firebase , na tabela Histórico de lançamentos do seu site, passe o cursor sobre a entrada da versão anterior que você deseja excluir.
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. O URL de visualização associado também é desativado. Uma exceção à exclusão de versão é se uma versão estiver associada a outra versão (isso acontece, por exemplo, se você clonar uma versão de um canal para outro no 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.CLI do Firebase
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 do Hosting padrão usando o Este comando não é implementado 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 o conteúdo e a configuração do Hosting 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 não for possível abrir em um navegador |
Comandos para clonagem de versão
Comando | Descrição |
---|---|
firebase hosting:clone \ | Clona a versão implantada mais recentemente no canal "origem" especificado para o canal "destino" especificado Esse comando também é implantado no canal "destino" especificado. Se o canal "destino" ainda não existir, este comando cria um novo canal de visualização no site de hospedagem "destino" antes de implantar no canal. |
firebase hosting:clone \ | Clona a versão especificada para o canal "destino" especificado Esse comando também é implantado no canal "destino" especificado. Se o canal "destino" ainda não existir, este comando cria um novo canal de visualização no site de hospedagem "destino" antes de implantar no canal. Você pode encontrar o |