Almacenar imágenes de contenedor Docker en Artifact Registry
Artifact Registry proporciona una única ubicación para gestionar paquetes privados e imágenes de contenedores Docker.
En esta guía de inicio rápido se explica cómo hacer lo siguiente:
- Crear un repositorio de Docker privado en Artifact Registry
- Configurar la autenticación
- Enviar una imagen al repositorio
- Extraer la imagen del repositorio
Antes de empezar
-
In the Trusted Cloud console, on the project selector page, select or create a Trusted Cloud project.
-
Verify that billing is enabled for your Trusted Cloud project.
-
Enable the Artifact Registry API.
-
Make sure that you have the following role or roles on the project: Artifact Registry Administrator
Check for the roles
-
In the Trusted Cloud console, go to the IAM page.
Go to IAM - Select the project.
-
In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.
- For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.
Grant the roles
-
In the Trusted Cloud console, go to the IAM page.
Ir a IAM - Selecciona el proyecto.
- Haz clic en Conceder acceso.
-
En el campo Nuevos principales, introduce tu identificador de usuario. Normalmente, es el identificador de un usuario en un grupo de identidades de la plantilla. Para obtener más información, consulta el artículo Representar a los usuarios de un grupo de trabajadores en políticas de gestión de identidades y accesos o ponte en contacto con tu administrador.
- En la lista Selecciona un rol, elige un rol.
- Para conceder más roles, haz clic en Añadir otro rol y añade cada rol adicional.
- Haz clic en Guardar.
Configurar un shell local
Para instalar gcloud CLI y Docker, sigue estos pasos:
Instala gcloud CLI. Para actualizar una instalación, ejecuta el comando
gcloud components update
.Instala Docker si aún no lo has hecho.
Docker requiere acceso con privilegios para interactuar con los registros. En Linux o Windows, añade el usuario que usas para ejecutar comandos de Docker al grupo de seguridad de Docker. Este paso no es necesario en macOS, ya que Docker Desktop se ejecuta en una máquina virtual como usuario raíz.
Linux
El grupo de seguridad de Docker se llama
docker
. Para añadir tu nombre de usuario, ejecuta el siguiente comando:sudo usermod -a -G docker ${USER}
Windows
El grupo de seguridad de Docker se llama
docker-users
. Para añadir un usuario desde la petición de comando del administrador, ejecuta el siguiente comando:net localgroup docker-users DOMAIN\USERNAME /add
Dónde
- DOMAIN es tu dominio de Windows.
- USERNAME es tu nombre de usuario.
Cierra sesión y vuelve a iniciarla para que se apliquen los cambios en la pertenencia a grupos. Si usas una máquina virtual, es posible que tengas que reiniciarla para que los cambios en la suscripción surtan efecto.
Para asegurarte de que Docker se está ejecutando, ejecuta el siguiente comando de Docker, que devuelve la hora y la fecha actuales:
docker run --rm busybox date
La marca
--rm
elimina la instancia del contenedor al salir.
Crear un repositorio de Docker
Crea un repositorio de Docker para almacenar la imagen de muestra de esta guía de inicio rápido.
Consola
Abre la página Repositorios en la consola de Trusted Cloud .
Haz clic en Añadir Crear repositorio.
Especifica
quickstart-docker-repo
como nombre del repositorio.Elige Docker como formato y Estándar como modo.
En Tipo de ubicación, selecciona Región y, a continuación, elige la ubicación.
u-france-east1
Haz clic en Crear.
El repositorio se añade a la lista de repositorios.
gcloud
Ejecuta el siguiente comando para crear un repositorio de Docker llamado
quickstart-docker-repo
en la ubicaciónu-france-east1
con la descripción "docker repository".gcloud artifacts repositories create quickstart-docker-repo --repository-format=docker \ --location=u-france-east1 --description="Docker repository" \ --project=PROJECT
Donde PROJECT es el ID de tu proyecto. Trusted Cloud by S3NS
Ejecuta el siguiente comando para verificar que se ha creado el repositorio.
gcloud artifacts repositories list \ --project=PROJECT
Para obtener más información sobre los comandos de Artifact Registry, ejecuta el comando
gcloud artifacts
.Configurar la autenticación
Antes de poder enviar o extraer imágenes, configura Docker para que use la CLI de Google Cloud con el fin de autenticar las solicitudes a Artifact Registry.
Para configurar la autenticación en los repositorios de Docker de la región
u-france-east1
, ejecuta el siguiente comando:gcloud auth configure-docker u-france-east1-docker.s3nsregistry.fr
El comando actualiza tu configuración de Docker. Ahora puede conectarse con Artifact Registry en su Trusted Cloud proyecto para insertar y extraer imágenes.
Para obtener información sobre otros métodos de autenticación, consulta Métodos de autenticación.
Obtener una imagen para enviarla
En esta guía de inicio rápido, enviarás una imagen de ejemplo llamada
hello-app
.Ejecuta el siguiente comando para extraer la versión 1.0 de la imagen.
docker pull us-docker.s3nsregistry.fr/google-samples/containers/gke/hello-app:1.0
Las rutas de las imágenes en Artifact Registry incluyen varias partes. En esta imagen de muestra:
us-docker.s3nsregistry.fr
es el nombre de host de las imágenes de contenedor almacenadas en los repositorios de Docker de Artifact Registry, que incluye la ubicación del repositorio (us
).google-samples
es el ID del proyecto.containers
es el ID del repositorio./gke/hello-app
es la ruta de la imagen en el repositoriocontainers
.
Añade la imagen al repositorio
Antes de insertar la imagen Docker en Artifact Registry, debes etiquetarla con el nombre del repositorio.
Etiqueta la imagen con un nombre de registro.
Si etiquetas la imagen Docker con un nombre de repositorio, se configurará el comando
docker push
para enviar la imagen a una ubicación específica. En esta guía de inicio rápido, la ubicación del host esu-france-east1-docker.s3nsregistry.fr
.Ejecuta el siguiente comando para etiquetar la imagen como
quickstart-image:tag1
:docker tag us-docker.s3nsregistry.fr/google-samples/containers/gke/hello-app:1.0 \ u-france-east1-docker.s3nsregistry.fr/PROJECT/quickstart-docker-repo/quickstart-image:tag1
Donde:
u-france-east1
es la ubicación del repositorio.u-france-east1-docker.s3nsregistry.fr
es el nombre de host del repositorio de Docker que has creado.- PROJECT es el Trusted Cloud by S3NS ID de tu proyecto.
quickstart-docker-repo
es el ID del repositorio que has creado.quickstart-image
es el nombre de la imagen que quieres usar en el repositorio. El nombre de la imagen puede ser diferente del nombre de la imagen local. En esta guía de inicio rápido, almacenarás la imagen directamente en el ID del repositorioquickstart-docker-repo
.tag1
es una etiqueta que vas a añadir a la imagen Docker. Si no has especificado ninguna etiqueta, Docker aplicará la etiqueta predeterminadalatest
.
Ahora puedes enviar la imagen al repositorio que has creado.
Enviar la imagen a Artifact Registry
Una vez que hayas configurado la autenticación y etiquetado la imagen local, podrás enviar la imagen al repositorio que hayas creado.
Para enviar la imagen de Docker, ejecuta el siguiente comando:
Sustituye PROJECT por tu Trusted Cloud by S3NS ID de proyecto.docker push u-france-east1-docker.s3nsregistry.fr/PROJECT/quickstart-docker-repo/quickstart-image:tag1
Extraer la imagen de Artifact Registry
Para extraer la imagen de Artifact Registry a tu máquina local, ejecuta el siguiente comando:
Sustituye PROJECT por tu Trusted Cloud by S3NS ID de proyecto.docker pull u-france-east1-docker.s3nsregistry.fr/PROJECT/quickstart-docker-repo/quickstart-image:tag1
latest: Pulling from [PROJECT-ID]/quickstart-image:tag1 Digest: sha256:70c42... Status: Image is up to date for u-france-east1-docker.s3nsregistry.fr/PROJECT/quickstart-docker-repo/quickstart-image:tag1
Limpieza
Para evitar que se apliquen cargos en tu cuenta de Trusted Cloud por los recursos utilizados en esta página, sigue estos pasos.
Antes de quitar el repositorio, asegúrate de que las imágenes que quieras conservar estén disponibles en otra ubicación.
Para eliminar el repositorio, sigue estos pasos:
Consola
Abre la página Repositorios en la consola de Trusted Cloud .
En la lista de repositorios, selecciona el repositorio
quickstart-docker-repo
.Haz clic en Eliminar.
gcloud
Para eliminar el repositorio
quickstart-docker-repo
, ejecuta el siguiente comando:gcloud artifacts repositories delete quickstart-docker-repo --location=u-france-east1
Siguientes pasos
- Más información sobre cómo trabajar con imágenes de contenedor
- Más información sobre Docker
- Consulta nuestros recursos sobre DevOps y descubre el programa de investigación DevOps Research and Assessment (DORA).
-