Conéctate a una base de datos de Firestore

Usa Firestore a fin de configurar una base de datos en la nube NoSQL escalable para tu servicio de Cloud Run. Firestore es una base de datos NoSQL flexible y escalable para el desarrollo móvil, web y de servidores.

Mediante la integración de Cloud Run que se describe en esta página, puedes conectar el servicio de Cloud Run a una base de datos nueva de Firestore con rapidez.

Antes de comenzar

  • Asegúrate de que el servicio de Cloud Run con el que te integras ya esté implementado.
  • Revisa la página de precios de Firestore. Se te facturan los recursos individuales usados en la integración.

Roles obligatorios

Para usar las integraciones de Cloud Run, tú o tu administrador deben otorgar roles de IAM en dos principales diferentes.

Haz clic para ver los roles necesarios para tu Cuenta de Google

Para obtener los permisos que necesitas para usar las integraciones de Cloud Run, pídele a tu administrador que otorgue a tu Cuenta de Google los siguientes roles de IAM en tu proyecto:

Haz clic para ver los roles necesarios para la cuenta de servicio

Para implementar el servicio de Cloud Run, puedes usar la cuenta de servicio predeterminada de Compute Engine creada automáticamente o especificar una cuenta de servicio administrada por el usuario. Esta cuenta de servicio debe tener los siguientes roles:

Conecta un servicio a una nueva base de datos de Firestore

Cualquier cambio en la configuración conlleva la creación de una revisión nueva. Las revisiones posteriores también adoptarán esta configuración de manera automática, a menos que realices actualizaciones explícitas para cambiarla.

Puedes conectar un servicio de Cloud Run a una base de datos de Firestore mediante la consola o la línea de comandos.

Console

  1. En la consola de Google Cloud, ve a la página Cloud Run.

    Ir a Cloud Run

  2. Haz clic en el servicio de la lista de servicios que deseas usar en esta integración.

  3. Haz clic en la pestaña Integraciones.

  4. Haz clic en Agregar integración.

  5. Haz clic en Base de datos de Firestore.

  6. Usa el nombre predeterminado o cambia el nombre por el valor que quieres usar.

    imagen

  7. Si se te solicita que habilites una lista de APIs, haz clic en Habilitar y espera a que las API se habiliten.

  8. En Recursos, observa los recursos nuevos que se crearán como resultado de esta integración.

  9. Haz clic en Enviar y espera a que se creen la integración y los recursos. Esto puede tardar hasta 15 minutos.

Línea de comandos

  1. Actualiza a la versión más reciente de Google Cloud CLI:

    gcloud components update
    
  2. Crea la integración:

    gcloud beta run integrations create \
    --type=firestore \
    --service=SERVICE \
    

    Reemplaza lo siguiente:

    • SERVICE por el nombre de servicio de Cloud Run

    De manera opcional, puedes incluir la marca --service-account=SERVICE_ACCOUNT_EMAIL.

    • SERVICE_ACCOUNT_EMAIL por la dirección de correo electrónico de la cuenta de servicio administrada por el usuario (PROJECT_NUMBER[email protected]) que se usa para implementar el servicio. Omite esta marca si deseas usar la cuenta de servicio de procesamiento predeterminada (SERVICE_ACCOUNT_ID@PROJECT_ID.iam.gserviceaccount.com).

      Para seguir usando la cuenta de servicio especificada cuando implementas integraciones de Cloud Run, ejecuta el siguiente comando:

      gcloud config set runapps/deployment-service-account
      
  3. Espera hasta 15 minutos, durante los cuales se crea y se conecta una base de datos de Firestore completamente configurada. Además, se crea una revisión nueva de Cloud Run, incluidas las variables de entorno que identifican la base de datos. Cuando se completa el proceso, se muestra el siguiente mensaje:

    [firestore] integration [firestore-xxx] has been updated successfully.
    
    To connect to the Firestore database, utilize the environment variable
    `FIRESTORE_DB_NAME`. This variable is added to the Cloud Run
    service for you.

    Para verificar el estado, ejecuta gcloud beta run integrations describe.

Visualiza integraciones de bases de datos de Firestore

Para ver el estado actual de las integraciones de la base de datos de Firestore para el servicio de Cloud Run, sigue estos pasos:

Console

  1. En la consola de Google Cloud, ve a la página Cloud Run.

    Ir a Cloud Run

  2. Haz clic en el servicio de la lista de servicios que deseas usar en esta integración.

  3. Haz clic en la pestaña Integraciones.

  4. Ubica la integración de la base de datos de Firestore que te interese y haz clic en Ver detalles.

Línea de comandos

  1. Usa el siguiente comando para obtener una lista de las integraciones disponibles:

    gcloud beta run integrations list
  2. Con un nombre de la lista que se muestra, muestra sus detalles:

    gcloud beta run integrations describe INTEGRATION_NAME

    Reemplaza INTEGRATION_NAME por el nombre de la integración de la base de datos de Firestore.

Borra integraciones de bases de datos de Firestore

Si borras una integración, también se borrarán todos los recursos de Google Cloud asociados a esa integración, pero no se borrará tu servicio de Cloud Run.

Para borrar una integración de base de datos de Firestore del servicio de Cloud Run, sigue estos pasos:

Console

  1. En la consola de Google Cloud, ve a la página Cloud Run.

    Ir a Cloud Run

  2. Haz clic en el servicio del que deseas borrar una integración.

  3. Haz clic en la pestaña Integraciones.

  4. Ubica la integración de la base de datos de Firebase que te interese y haz clic en el ícono de puntos suspensivos a la derecha de la integración. Luego, haz clic en Borrar.

Línea de comandos

  1. Usa el siguiente comando para obtener una lista de las integraciones disponibles:

    gcloud beta run integrations list
  2. Con un nombre de la lista que se muestra, borra la integración:

    gcloud beta run integrations delete INTEGRATION_NAME
    

    Reemplaza lo siguiente:

    • INTEGRATION_NAME por el nombre de la integración de la base de datos de Firestore.

    De manera opcional, puedes usar las siguientes opciones de marcas:

    Opción Descripción
    --service-account La dirección de correo electrónico de la cuenta de servicio administrada por el usuario para realizar la operación de eliminación.

Accede a la base de datos de Firestore en el código

Después de completar la integración, Cloud Run agrega automáticamente la variable de entorno FIRESTORE_DB_NAME para usarla en tu código de servicio de Cloud Run.

Código de muestra para servicios que usan Firestore

Consulta la documentación de Firestore para ver las muestras de código de Cloud Run y Firestore.

Limitaciones