Almacena imágenes de contenedor y dependencias para tus aplicaciones en Artifact Registry para implementar en App Engine
- Declara dependencias en Artifact Registry para Node.js y Python aplicaciones.
- Implementa tu aplicación directamente en el entorno estándar de App Engine o, bien, conténeriza y, luego, impleméntala en el entorno flexible de App Engine con Cloud Build.
- Almacena imágenes de contenedor en repositorios de Docker de Artifact Registry y, luego, impleméntalas en el entorno flexible de App Engine.
Permisos necesarios
- Entorno flexible de App Engine
- Si el entorno flexible de App Engine y Artifact Registry están en el mismo proyecto, la cuenta de servicio predeterminada de App Engine tiene permisos para extraer contenedores de los repositorios.
- Si también usas Cloud Build para alojar en contenedores tus aplicaciones y almacenarlas en Artifact Registry, otorga el rol de escritor de Artifact Registry a la cuenta de servicio de Cloud Build.
- Entorno estándar de App Engine:
- El entorno estándar de App Engine usa la cuenta de servicio de Cloud Build para
compilar e implementar tus aplicaciones, incluida la integración de
las dependencias almacenadas en Artifact Registry.
- Si App Engine y Artifact Registry están en el mismo proyecto de Google Cloud, la cuenta de servicio tiene los permisos necesarios para descargar desde los repositorios.
- Si App Engine y Artifact Registry están en proyectos diferentes, debes otorgarle acceso al repositorio a la cuenta de servicio.
- A fin de proporcionar acceso de solo lectura para descargar dependencias, otorga el permiso Rol de lector de Artifact Registry para el servicio de Cloud Build de servicio predeterminada.
- Si también usas Cloud Build para subir artefactos a repositorios, otorga el rol de escritor de Artifact Registry a la cuenta de servicio de Cloud Build.
Implementa el entorno flexible de App Engine
Puedes implementar una imagen alojada por Artifact Registry en App Engine. con Google Cloud CLI.
- Crea el archivo de configuración de App Engine para tu app.
- Compila una imagen de Docker y envíala a tu en un repositorio de confianza. Puedes usar Cloud Build para compilar y enviar tu contenedor al repositorio.
Ejecuta el siguiente comando para implementar tu imagen en App Engine:
gcloud app deploy --image-url=LOCATION-docker.pkg.dev/PROJECT-ID/REPOSITORY/IMAGE:TAG
Donde:
- LOCATION es la ubicación regional o multirregional del repositorio.
- PROJECT es el ID del proyecto que contiene el repositorio.
Si el ID de tu proyecto contiene dos puntos (
:
), consulta Proyectos con alcance de dominio. - REPOSITORY es el nombre del repositorio en el que se almacena la imagen.
- IMAGE es el nombre de la imagen en el repositorio.
- TAG es la etiqueta de la versión de la imagen que deseas extraer.
Por ejemplo:
gcloud app deploy --image-url=us-central1-docker.pkg.dev/my-project/my-repo/my-image:1.0
Configura el acceso a las dependencias
Para aplicaciones del entorno estándar, consulta la documentación del entorno estándar de App Engine para Instrucciones de configuración de npm y Python.
Para incluir dependencias en compilaciones que ejecutas con Cloud Build, consulta Integración en Cloud Build.