Firebase Hosting proporciona herramientas a través de Firebase console y Firebase CLI para administrar los canales, las versiones y las actualizaciones de tu sitio de Hosting.
Descripción general de la infraestructura de Hosting
Comprender la infraestructura de Hosting te ayudará a entender las opciones de administración que se describen en esta página.
Todos los proyectos de Firebase tienen un sitio de Hosting predeterminado que tiene acceso a todos los recursos del proyecto (bases de datos, autenticación, funciones, etcétera). Un sitio contiene uno o más canales, y cada canal está asociado con una URL que entrega contenido específico y una configuración de Hosting.
Cada sitio de Hosting tiene un canal “publicado” que entrega contenido y una configuración de Hosting en (1) los subdominios del sitio aprovisionados por Firebase (SITE_ID.web.app
y SITE_ID.firebaseapp.com
) y en (2) todos los dominios personalizados que estén conectados. También puedes crear canales de
“vista previa” que entreguen su propio contenido y configuración en
“URLs de vista previa” que son temporales y se pueden compartir (SITE_ID--CHANNEL_ID-RANDOM_HASH.web.app
El contenido y la configuración que entrega cada canal se empaquetan en un objeto version que tiene un identificador único. Cuando implementas en tu sitio, Firebase crea un objeto de actualización que apunta a una versión específica. Una actualización contiene metadatos sobre la implementación, como quién la realizó y cuándo.
Desde el panel de Hosting del proyecto de Firebase, puedes ver el historial completo de las actualizaciones de tu canal publicado en una tabla que contiene el Historial de actualizaciones. Si tienes varios sitios de Hosting, haz clic en Ver, en el sitio deseado para consultar su historial de actualizaciones. Si tienes canales de vista previa, también se muestran en el panel Hosting.
Administra la configuración de un canal
Puedes controlar la configuración de todos los canales de tu sitio. Algunas opciones, como el vencimiento, solo son aplicables a los canales de vista previa.
Limita la cantidad de actualizaciones que se conservan
Cada vez que implementas en un canal, y creas una actualización, Hosting conserva la versión asociada con la actualización anterior en el almacenamiento de Hosting del proyecto. Puedes configurar la cantidad de actualizaciones que se mantendrán por cada canal en tu proyecto, tanto en los canales publicados como en los de vista previa.
¿Por qué Hosting conserva actualizaciones anteriores?
Conservar actualizaciones anteriores del canal publicado te permite revertir a una versión anterior del sitio en caso de ser necesario. La reversión aún no está disponible para los canales de vista previa.¿Por qué se recomienda limitar la cantidad de actualizaciones que se deben conservar?
Esta función puede ayudarte a controlar el nivel de uso del almacenamiento de Hosting de tu proyecto, ya que el contenido de actualizaciones anteriores se conserva en este almacenamiento. Puedes supervisar el almacenamiento de Hosting desde la pestaña Almacenamiento en la consola.¿Qué sucede cuando limitas las actualizaciones que se mantendrán?
Cuando configuras un límite para la conservación de actualizaciones, el contenido de cualquier versión que exceda el límite definido se programará para borrarse, comenzando por las versiones más antiguas.
Aquí te mostramos cómo establecer el límite de almacenamiento de actualizaciones de un canal:
En Firebase console, accede al cuadro de diálogo de configuración de almacenamiento de la versión:
Para el canal publicado
En la tabla Historial de actualizaciones del sitio, haz clic en y, luego, selecciona Configuración de almacenamiento de actualizaciones.Para cualquier canal de vista previa
En la fila del canal de vista previa, haz clic en y, luego, selecciona Configuración del canal.
Ingresa la cantidad de actualizaciones que deseas conservar y, luego, haz clic en Guardar.
Configura el vencimiento de un canal de vista previa
De forma predeterminada, un canal de vista previa vence 7 días a partir de la fecha de creación, pero el canal publicado de tu sitio nunca vencerá.
Cuando vence un canal de vista previa, se programa la eliminación del canal junto con sus actualizaciones asociadas en un plazo de 24 horas. También se desactiva la URL de vista previa asociada. Una excepción a esta eliminación de la versión ocurre si una versión está asociada a otra versión (por ejemplo, si clonas una versión de un canal a otro en el mismo sitio).
Hosting admite dos formas diferentes de controlar el vencimiento de un canal:
Firebase console
En la fila del canal de vista previa, haz clic en y, luego, selecciona Configuración del canal. Ingresa la fecha y hora de vencimiento.Firebase CLI
Cuando realices implementaciones en tu canal de vista previa, pasa la marca--expires DURATION
, por ejemplo:firebase hosting:channel:deploy new-awesome-feature --expires 7d
El vencimiento puede ser de hasta 30 días a partir de la fecha de implementación. Usa
h
para las horas,d
para los días yw
para las semanas (por ejemplo,12h
,7d
y2w
, respectivamente).
Clona una versión de un canal a otro
Puedes clonar una versión implementada de un canal a otro. Puedes clonar entre canales publicados o de vista previa, sitios de Hosting o incluso entre proyectos de Firebase.
El comando de clonación también implementa en el canal de “destino” para que el contenido y la configuración de Hosting clonados se entreguen automáticamente en la URL asociada del canal de “destino”.
Esta característica es útil para el seguimiento de versiones o si necesitas asegurarte de que estás implementando el contenido exacto que viste o probaste en otro canal. Estos son algunos ejemplos:
Clona desde un canal de vista previa de “QA” hacia el canal publicado de tu sitio.
Clona desde el canal publicado de tu sitio hacia un canal de vista previa de “depuración” (como antes de una reversión)
Clona desde un canal en tu proyecto de Firebase en “etapa de pruebas” hacia un canal de vista previa en tu proyecto de “producción” de Firebase
Para clonar una versión, ejecuta el siguiente comando desde cualquier directorio:
firebase hosting:clone SOURCE_SITE_ID:SOURCE_CHANNEL_ID TARGET_SITE_ID:TARGET_CHANNEL_ID
Reemplaza cada marcador de posición por lo siguiente:
SOURCE_SITE_ID y TARGET_SITE_ID: Estos son los ID de los sitios de Hosting que contienen los canales.
- En el sitio de Hosting predeterminado, usa el ID de tu proyecto de Firebase.
- Puedes especificar sitios de Hosting que se encuentren en el mismo proyecto de Firebase o incluso en diferentes proyectos de Firebase.
SOURCE_CHANNEL_ID y TARGET_CHANNEL_ID: Estos son los identificadores de los canales.
- Para un canal publicado, usa
live
como ID de canal. - Si el canal de “destino” especificado aún no existe, este comando crea el canal antes de implementarlo en él.
- Para un canal publicado, usa
Revierte a una versión anterior del sitio
Puedes realizar una reversión para entregar una versión anterior del canal publicado de tu sitio. Esta acción es útil si la actualización tiene un problema y deseas revertirla para entregar una que funcione. O tal vez en el sitio se entregó contenido temporal para una festividad o un evento especial, pero ahora quieres revertirlo para entregar la versión “normal” del contenido.
Cuando realizas una reversión, se crea una actualización nueva que entrega la misma adaptación del contenido de una actualización anterior. En la tabla Historial de actualizaciones, las dos versiones incluirán el mismo identificador de versión.
A continuación, te mostramos cómo hacerlo:
En la tabla Historial de actualizaciones de tu sitio en Firebase console, coloca el cursor sobre la entrada de la actualización anterior a la que quieres revertir.
Haz clic en
y, luego, selecciona Revertir.
Borra una actualización de forma manual
Es posible que debas borrar manualmente una actualización de tu canal publicado a fin de liberar almacenamiento de Hosting para tu proyecto. Solo puedes borrar las actualizaciones anteriores, no la que se entrega actualmente en tu sitio publicado.
Cuando borras una actualización, en realidad borras su contenido, el que se programa para borrarse en 24 horas. El objeto de la actualización se mantiene para que puedas seguir viendo sus metadatos (quién lo implementó y cuándo).
Aquí se muestra cómo borrar una actualización:
En Firebase console, en la tabla Historial de actualizaciones de tu sitio, coloca el cursor sobre la entrada de la actualización anterior que deseas borrar.
Haz clic en
y, luego, selecciona Borrar.
Borra archivos manualmente
En Firebase Hosting, la forma principal de borrar archivos seleccionados de un sitio implementado es borrar los archivos localmente y volver a implementar.
Borra un canal de vista previa de forma manual
Haz clic en el canal del que quieres obtener una vista previa. Desde esta vista, puedes ver, borrar y revertir las implementaciones y actualizaciones más recientes que estén vinculadas al canal específico. Puedes borrar un canal de vista previa, pero no puedes borrar el canal publicado de tu sitio.
Cuando borras un canal de vista previa, el canal, junto con todas sus actualizaciones y versiones asociadas, se programan para su eliminación en un plazo de 24 horas. También se desactiva la URL de vista previa asociada. Una excepción a la eliminación de la versión es si una versión está asociada a otra versión (esto ocurre, por ejemplo, si clonas una versión de un canal a otro en el mismo sitio).
Hosting admite dos formas diferentes de borrar un canal de vista previa:
Firebase console
En la fila del canal de vista previa, haz clic en y, luego, selecciona Borrar canal. Confirma la eliminación.Firebase CLI
Ejecuta el siguiente comando desde cualquier directorio:firebase hosting:channel:delete CHANNEL_ID
Comandos de la CLI para los canales de vista previa y la clonación
Comandos para los canales de vista previa
Todos los comandos para los canales de vista previa admiten destinos de implementación si tienes varios sitios de Hosting.
Comando | Descripción |
---|---|
firebase hosting:channel:create CHANNEL_ID
|
Crea un nuevo canal de vista previa en el sitio de Hosting predeterminado con el Este comando no se implementa en el canal. |
firebase hosting:channel:delete CHANNEL_ID
|
Borra el canal de vista previa especificado No puedes borrar el canal publicado de un sitio. |
firebase hosting:channel:deploy CHANNEL_ID
|
Implementa tu contenido y configuración de Hosting en el canal de vista previa especificado. Si el canal de vista previa aún no existe, este comando lo crea en el sitio de Hosting predeterminado antes de implementarlo en el canal. |
firebase hosting:channel:list
|
Muestra todos los canales (incluido el canal "publicado") en el sitio de Hosting predeterminado. |
firebase hosting:channel:open CHANNEL_ID
|
Abre un navegador a la URL del canal especificado o muestra la URL si no se puede abrir en un navegador. |
Comandos para la clonación de versiones
Comando | Descripción |
---|---|
firebase hosting:clone \
|
Clona la versión implementada más recientemente en el canal de “origen” especificado y la envía al canal de “destino” especificado. Este comando también se implementa en el canal de “destino”. Si el canal de “destino” aún no existe, este comando crea un canal de vista previa nuevo en el sitio de Hosting de “destino”, antes de implementar en el canal. |
firebase hosting:clone \
|
Clona la versión especificada en el canal de “destino” especificado Este comando también se implementa en el canal de “destino”. Si el canal de “destino” aún no existe, este comando crea un canal de vista previa nuevo en el sitio de Hosting de “destino”, antes de implementar en el canal. Puedes encontrar el |