Catch up on everthing we announced at this year's Firebase Summit. Learn more

Administre canales, lanzamientos y versiones en vivo y de vista previa para su sitio

Firebase Hosting proporciona herramientas a través de la consola de Firebase y la CLI de Firebase para administrar los canales, lanzamientos y versiones de su sitio de Hosting.

Descripción general de la infraestructura de alojamiento

Comprender la infraestructura de alojamiento le ayuda a comprender las opciones de administración que se describen en esta página.

Cada proyecto Firebase tiene un sitio de alojamiento por defecto con acceso a todos los recursos del proyecto (bases de datos, autenticación, funciones, etc.). Un sitio contiene uno o más canales, donde cada canal está asociado con un URL que sirve contenido específico y una configuración de alojamiento.

una imagen de la jerarquía de Firebase Hosting

Cada sitio de alojamiento tiene un canal "en vivo" que sirve contenido y una configuración que recibe en (1) subdominios aprovisionados Firebase del sitio ( SITE_ID .web.app y SITE_ID .firebaseapp.com ) y (2) cualquier conectados dominios personalizados . También puede crear opcionalmente canales "Vista previa" que sirven a sus propios contenidos y configuración en compartibles, "URL de vista previa" temporales ( SITE_ID -- CHANNEL_ID - RANDOM_HASH .web.app ).

El contenido y la configuración servida por cada canal se empaqueta en un objeto de versión que tiene un identificador único. Cuando se implementa en su sitio, Firebase crea un objeto de liberación que apunta a una versión específica. Una versión contiene metadatos sobre la implementación, como quién implementó y cuándo lo hizo.

A partir de su proyecto Firebase tablero de alojamiento , se puede ver un historial completo de los comunicados de su canal en vivo en una tabla de historial de lanzamiento. Si usted tiene múltiples sitios de alojamiento , haga clic en Ver para el sitio deseado para ver su historial de versiones. Si tiene canales de vista previa, también se muestran en el panel de Hosting.

Administrar la configuración de un canal

Para cada canal de su sitio, puede controlar su configuración. Algunas configuraciones, como la caducidad del canal, solo se aplican a los canales de vista previa.

Limite la cantidad de lanzamientos para mantener

Cada vez que implementas en un canal (y creas una versión), Hosting mantiene la versión asociada con la versión anterior en el almacenamiento de Hosting de tu proyecto. Puede establecer el número de lanzamientos de mantener para cada canal en su proyecto, ambos canales en directo y vista previa.

  • ¿Por qué Hosting mantiene versiones anteriores?
    Para su canal en vivo, manteniendo las versiones anteriores le permite hacer retroceder a una versión anterior de su sitio, si es necesario. Para sus canales de vista previa, la reversión aún no está disponible.

  • ¿Por qué limitar el número de lanzamientos a conservar?
    Esta característica puede ayudar a controlar el nivel de uso de su almacenamiento de alojamiento de proyecto , ya que el contenido de versiones anteriores se mantiene en este almacenamiento. Puede supervisar el almacenamiento de alojamiento de la pestaña de almacenamiento en la consola.

  • ¿Qué sucede cuando limitas las liberaciones para mantener?
    Cuando se establece un límite de lanzamientos para mantener el contenido de cualquier liberación de su límite conjunto está programada para su eliminación, a partir de las notas de antiguos primero.

A continuación, le indicamos cómo establecer el límite de almacenamiento de versiones para un canal:

  1. En la consola de Firebase , el acceso al diálogo de configuración de almacenamiento de prensa:

    • Para tu canal en vivo
      En la tabla Historial de versiones de su sitio, haga clic en , a continuación, seleccione la configuración de almacenamiento de la versión.

    • Para cualquier canal de vista previa
      En la fila para el canal de vista previa, haga clic en , a continuación, seleccione Configuración del canal.

  2. Introduce el número de lanzamientos que le gustaría mantener, a continuación, haga clic en Guardar.

Establecer la caducidad de un canal de vista previa

De forma predeterminada, un canal de vista previa caduca a los 7 días de su fecha de creación, pero el canal en vivo de su sitio nunca caducará.

Cuando un canal de vista previa caduca, el canal, junto con sus lanzamientos y versiones asociadas, está programado para su eliminación dentro de las 24 horas. La URL de vista previa asociada también está desactivada. Una excepción a esta versión de deleción es si una versión está asociado con otro lanzamiento (esto ocurre, por ejemplo, si se clona una versión de un canal a otro dentro del mismo sitio).

El alojamiento admite dos formas diferentes de controlar la expiración de un canal:

  • Consola de Firebase
    En la fila para el canal de vista previa, haga clic en , a continuación, seleccione Configuración del canal. Ingrese la fecha y hora de vencimiento.

  • Firebase CLI
    Al implementar a su canal de vista previa, pase el --expires DURATION bandera, 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. Uso h para horas, d días, y w para semana (por ejemplo, 12h , 7d , 2w , respectivamente).

Clonar una versión de un canal a otro

Puede clonar una versión implementada de un canal a un canal diferente. Puede clonar en canales en vivo o de vista previa, en sitios de alojamiento o incluso en proyectos de Firebase.

El comando clon también despliega al canal "objetivo" de modo que el contenido de alojamiento clonado y config se sirven de forma automática en la URL asociada al "objetivo" del canal.

Esta característica es útil para el seguimiento de versiones o si desea la confianza de que va a implementar el contenido exacto que has visto y / o probado en otro canal. Aquí hay unos ejemplos:

  • Clonar desde un canal de vista previa de "QA" al canal en vivo de su sitio (¡en vivo!)

  • Clonar del canal en vivo de su sitio a un canal de vista previa de "depuración" (como antes de una reversión)

  • Clona de un canal en tu proyecto de Firebase "provisional" a un canal de vista previa en tu proyecto de Firebase "prod"

Para clonar una versión, ejecute el siguiente comando desde cualquier directorio:

firebase hosting:clone SOURCE_SITE_ID:SOURCE_CHANNEL_ID TARGET_SITE_ID:TARGET_CHANNEL_ID

Reemplace cada marcador de posición con lo siguiente:

  • SOURCE_SITE_ID y TARGET_SITE_ID : Estos son los ID de los sitios de alojamiento que contienen los canales.

    • Para su sitio de alojamiento predeterminado, use su ID de proyecto de Firebase.
    • Puede especificar sitios de alojamiento que estén en el mismo proyecto de Firebase o incluso en diferentes proyectos de Firebase.
  • SOURCE_CHANNEL_ID y TARGET_CHANNEL_ID : Estos son los identifers para los canales.

    • Para un canal en vivo, utilice live como ID de canal.
    • Si el canal "objetivo" especificado aún no existe, este comando crea el canal antes de implementarlo.

Regrese a una versión anterior de su sitio

Puede retroceder para publicar una versión anterior del canal en vivo de su sitio. Esta acción es útil si su versión actual tiene un problema y desea revertir para ofrecer una versión de trabajo conocida de su sitio. O tal vez su sitio ofreció contenido temporal para una festividad o un evento especial, pero ahora desea volver a publicar su contenido "habitual".

Al revertir, crea una nueva versión que ofrece la misma versión de contenido que una versión anterior. En la tabla del historial de lanzamiento, ambos comunicados enumerarán el mismo identificador de versión.

A continuación, le indicamos cómo retroceder:

  1. En la consola de Firebase , en la tabla Historial de versiones de su sitio, Pase el ratón sobre la entrada versión anterior que desea volver a rollo.

  2. Haga clic , a continuación, seleccione la espalda Roll.

Eliminar manualmente una versión

Es posible que tenga que eliminar manualmente un comunicado de su canal en vivo para liberar de alojamiento de almacenamiento para su proyecto. Solo puede eliminar versiones anteriores, no la versión que se publica actualmente en su sitio en vivo.

Cuando elimina una versión, en realidad está eliminando su contenido, que está programado para eliminarse dentro de las 24 horas. El objeto de publicación en sí se conserva para que aún pueda ver sus metadatos (quién implementó y cuándo lo hizo).

A continuación, se explica cómo eliminar una versión:

  1. En la consola de Firebase , en la tabla Historial de versiones de su sitio, Pase el ratón sobre la entrada versión anterior que desea eliminar.

  2. Haga clic , a continuación, seleccione Eliminar.

Eliminar manualmente un canal de vista previa

Puede eliminar un canal de vista previa, pero no puede eliminar el canal en vivo de su sitio.

Cuando elimina un canal de vista previa, el canal, junto con sus lanzamientos y versiones asociadas, está programado para su eliminación dentro de las 24 horas. La URL de vista previa asociada también está desactivada. Una excepción a la versión de deleción es si una versión está asociado con otro lanzamiento (esto ocurre, por ejemplo, si se clona una versión de un canal a otro dentro del mismo sitio).

El alojamiento admite dos formas diferentes de eliminar un canal de vista previa:

  • Consola de Firebase
    En la fila para el canal de vista previa, haga clic en , a continuación, seleccionar el canal Delete. Confirma la eliminación.

  • Firebase CLI
    Ejecute el siguiente comando desde cualquier directorio:

    firebase hosting:channel:delete CHANNEL_ID

Comandos CLI para canales de vista previa y clonación

Comandos para canales de vista previa

Todos los comandos para los canales de vista previa apoyar los objetivos de desplegar si tiene múltiples sitios de alojamiento .

Mando Descripción
firebase hosting:channel:create CHANNEL_ID

Crea un nuevo canal de vista previa en el sitio de alojamiento por defecto utilizando el especificado CHANNEL_ID

Este comando no se implementa en el canal.

firebase hosting:channel:delete CHANNEL_ID

Elimina el canal de vista previa especificado

No puede eliminar el canal en vivo de un sitio.

firebase hosting:channel:deploy CHANNEL_ID

Implementa su contenido y configuración de Hosting en el canal de vista previa especificado

Si todavía no existe el canal de vista previa, este comando crea el canal en el sitio de alojamiento por defecto antes de desplegar al canal.

firebase hosting:channel:list Lista todos los canales (incluyendo el canal "en vivo") en el sitio de alojamiento por defecto
firebase hosting:channel:open CHANNEL_ID Abre un navegador a la URL del canal especificado o devuelve la URL si no es posible abrirla en un navegador

Comandos para la clonación de versiones

Mando Descripción
firebase hosting:clone \
SOURCE_SITE_ID : SOURCE_CHANNEL_ID \
TARGET_SITE_ID : TARGET_CHANNEL_ID

Clona la versión implementada más recientemente en el canal "fuente" especificado en el canal "objetivo" especificado

Este comando también se implementa en el canal "objetivo" especificado. Si el canal "objetivo" aún no existe, este comando crea un nuevo canal de vista previa en el sitio de alojamiento "objetivo" antes de implementarlo en el canal.

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

Clona la versión especificada en el canal "objetivo" especificado

Este comando también se implementa en el canal "objetivo" especificado. Si el canal "objetivo" aún no existe, este comando crea un nuevo canal de vista previa en el sitio de alojamiento "objetivo" antes de implementarlo en el canal.

Puede encontrar el VERSION_ID en el tablero de mandos de alojamiento de la consola Firebase.