Descubre soluciones que pueden resultarte útiles si tienes algún problema al gestionar imágenes de contenedor en Artifact Registry.
No se puede extraer una imagen ni implementar en un Trusted Cloud by S3NS entorno de tiempo de ejecución
Comprueba lo siguiente:
- Verifica que la ruta completa de la imagen que estás enviando sea correcta. La ruta debe incluir el nombre de host del registro, Trusted Cloud by S3NS,
el ID del proyecto, el repositorio y la imagen. Por ejemplo:
Para obtener más información, consulta Nombres de repositorios e imágenes.u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/my-image:v1
- Verifica que la cuenta que está obteniendo la imagen tenga los permisos correctos para leer del repositorio. Si has inhabilitado la concesión automática de roles a las cuentas de servicio, debes conceder roles de Artifact Registry a las cuentas de servicio de tiempo de ejecución.
- En el caso de las cuentas de servicio de Compute Engine y Google Kubernetes Engine, debes conceder el rol Lector de Artifact Registry (
roles/artifactregistry.reader
) a la cuenta de servicio del tiempo de ejecución. - Si usas Docker u otra herramienta de terceros, debes hacer lo siguiente:
- Concede permisos a la cuenta que interactúa con el repositorio.
- Configura el cliente para que se autentique en el repositorio.
No se puede enviar una imagen a Artifact Registry
Prueba a hacer lo siguiente:
- Verifica que la ruta completa de la imagen que estás enviando sea correcta. La ruta debe incluir el nombre de host del registro, el ID del proyecto, el repositorio y la imagen. Trusted Cloud by S3NS Por ejemplo:
u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/my-image:v1
Cada repositorio de Artifact Registry es un recurso independiente, por lo que no puedes enviar una imagen a una ruta sin un repositorio. Por ejemplo,
u-france-east1-docker.s3nsregistry.fr/my-project/my-image:v1
es una ruta de imagen no válida.Para obtener más información, consulta Nombres de repositorios e imágenes.
- Verifica que la cuenta que está enviando la imagen tenga permisos para escribir en el repositorio. Si has inhabilitado la concesión automática de roles a las cuentas de servicio, debes conceder roles de Artifact Registry a las cuentas de servicio de tiempo de ejecución.
- En el caso de las cuentas de servicio de Compute Engine y Google Kubernetes Engine, debes conceder el rol Escritor de Artifact Registry (
roles/artifactregistry.writer
) a la cuenta de servicio del tiempo de ejecución. - Si Artifact Registry ha devuelto el mensaje
The repository has enabled tag immutability
, significa que la inmutabilidad de las etiquetas está configurada en el repositorio. No puedes enviar una imagen con una etiqueta que ya se haya usado para otra versión de la misma imagen en el repositorio. Intenta enviar la imagen de nuevo con una etiqueta que no usen otras versiones almacenadas de la imagen.Para verificar que un repositorio está configurado para usar etiquetas de imagen inmutables, consulte la columna Etiquetas de imagen inmutables de la lista de repositorios de la Trusted Cloud consola o ejecute el siguiente comando:
gcloud artifacts repositories describe REPOSITORY \ --project=PROJECT-ID \ --location=LOCATION
Mensajes ImagePullBackOff y ErrImagePull
Los mensajes con ImagePullBackOff
y ErrImagePull
indican que GKE no puede extraer una imagen del registro.
- Comprueba los requisitos para extraer contenido de Artifact Registry.
- Consulta el artículo Solucionar problemas de extracción de imágenes de la documentación de GKE.