Desplegar en Firebase

En esta página se explica cómo desplegar aplicaciones en Firebase con Cloud Build. Si es la primera vez que usas Cloud Build, consulta primero las guías de inicio rápido y el resumen de la configuración de compilación.

Antes de empezar

  • Enable the Cloud Build, Firebase, and Resource Manager APIs.

    Enable the APIs

  • Para ejecutar los comandos gcloud de esta página, instala la CLI de Google Cloud.

  • Ten a mano el código fuente de tu aplicación, incluido firebase.json. El código fuente debe almacenarse en un repositorio, como Cloud Source Repositories, GitHub o Bitbucket.

  • Si aún no tienes un proyecto para desplegar en Firebase, puedes crear uno predeterminado instalando e inicializando Firebase.

Permisos de gestión de identidades y accesos necesarios

  1. Abre la página de gestión de identidades y accesos en la Google Cloud consola:

    Abre la página Gestión de identidades y accesos

  2. Selecciona el proyecto y haz clic en Abrir.

  3. En la tabla de permisos, busca el correo de la cuenta de servicio que vas a usar para la compilación y haz clic en el icono del lápiz.

  4. Añade los roles Cloud Build Service Account(roles/cloudbuild.builds.builder), Firebase Admin (roles/firebase.admin) yAPI Keys Admin (roles/serviceusage.apiKeysAdmin) a la cuenta de servicio.

  5. Haz clic en Guardar.

Usar la imagen de Docker firebase

Cloud Build proporciona una imagen de compilador que puedes usar para invocar comandos de firebase en Cloud Build. Para usar este creador en un archivo de configuración de Cloud Build, puedes usar el paso de compilación firebase para implementar en Firebase:

  1. Crea un archivo de configuración de compilación llamado cloudbuild.yaml o cloudbuild.json, donde PROJECT_ID es tu ID de proyecto y FIREBASE_PROJECT_ID es tu ID de proyecto de Firebase:Google Cloud

    YAML

    steps:
    - name: "us-docker.pkg.dev/firebase-cli/us/firebase"
       args: ['deploy', '--project=FIREBASE_PROJECT_ID', '--only=hosting']
    ## Or, target a specific version of firebase-tools
    - name: "us-docker.pkg.dev/firebase-cli/us/firebase":x.y.z
       args: ['deploy', '--project=FIREBASE_PROJECT_ID', '--only=hosting']
    

    JSON

    {
      "steps": [
       {
          "name": "us-docker.pkg.dev/firebase-cli/us/firebase",
          "args": [
             "deploy",
             "--project",
             "FIREBASE_PROJECT_ID",
             "--only",
             "hosting"
           ]
      }
      ]
    }
    

    Puedes elegir una versión específica de firebase-tools mediante
    name: "us-docker.pkg.dev/firebase-cli/us/firebase":x.y.z

  2. Inicia la compilación con el archivo de configuración de compilación:

    gcloud builds submit --region=REGION --config CONFIG_FILE_PATH SOURCE_DIRECTORY
    

    Donde:

    • REGION es una de las regiones de compilación admitidas.
    • CONFIG_FILE_PATH es la ruta al archivo de configuración de compilación.
    • SOURCE_DIRECTORY es la ruta o la URL del código fuente.

Despliegue continuo

Puedes automatizar el despliegue de tu software en Firebase creando activadores de Cloud Build. Puedes configurar activadores para compilar e implementar imágenes cada vez que actualices el código fuente.

Para automatizar el despliegue en Firebase, sigue estos pasos:

  1. En tu repositorio, añade un archivo de configuración de compilación con los pasos para invocar el comando firebase deploy, donde PROJECT_ID es el ID de tu proyecto: Google Cloud

    YAML

    steps:
          - name: us-docker.pkg.dev/firebase-cli/us/firebase
            args: ['deploy', '--project=PROJECT_ID', '--only=hosting']
    

    JSON

    {
      "steps": [
       {
          "name": "us-docker.pkg.dev/firebase-cli/us/firebase",
          "args": [
             "deploy",
             "--project",
             "PROJECT_ID",
             "--only",
             "hosting"
           ]
      }
      ]
    }
    
  2. Crea un activador con el archivo de configuración de compilación que has creado en el paso anterior:

    1. Abre la página Triggers (Activadores) en la Google Cloud consola:

      Abrir la página Activadores

    2. Selecciona tu proyecto en el menú desplegable del selector de proyectos situado en la parte superior de la página.

    3. Haz clic en Abrir.

    4. Haz clic en Crear activador.

      En la página Crear activador, introduzca los siguientes ajustes:

      1. Escribe un nombre para el activador.

      2. Selecciona el evento del repositorio para iniciar el activador.

      3. Selecciona el repositorio que contiene el código fuente y el archivo de configuración de compilación.

      4. Especifica la expresión regular del nombre de la rama o etiqueta que iniciará el activador.

      5. Configuración: elige el archivo de configuración de compilación que creaste anteriormente.

    5. Haz clic en Crear para guardar el activador de compilación.

Cada vez que envíes código nuevo a tu repositorio, se iniciará automáticamente una compilación y un despliegue en Firebase.

Para obtener más información sobre cómo crear activadores de Cloud Build, consulta el artículo Crear y gestionar activadores de compilación.

Ejemplo de código

Para ver un código de muestra de cómo desplegar en Firebase con Cloud Build, ve a deploy-firebase-example.

Siguientes pasos