Registros Docker para gestionar Imagenes Docker

Vamos a ver los diversos registros Docker que nos permitirán gestionar las Imagenes Docker.

 
Los registros Docker sirven para almacenar las diversas imagenes Docker que utilicemos en nuestro sistema. De esta forma podremos subir imagenes nuevas a los registros, o descargarlas cuando las necesitemos en alguna maquina Docker.
 

 

docker imagenes dockerfile
 

Autoría de la imagen: Docker Hub

 

 

Gestionando imagenes Docker desde un Registro Docker

 
La forma más facil de hacer que nuestras imagenes Docker estén disponibles para cuando las necesitemos, es usar un registro Docker, como Docker Hub, Docker Cloud o Github Docker, o incluso ejecutando nuestro propio registro privado de Docker.

 

Existen registros (repositorios) públicos de imagenes Docker.

Registros donde podemos encontrar imagenes Docker:

 

 
En este artículo:

 

 

1. Subir o Descargar imagenes de un registro Docker

 
Podemos subir imagenes Docker a nuestro registro con:

docker pull image

 

Y descargar imagenes de nuestro registro con:

docker push image

 

registro docker imagenes

Autoría de la imagen: Docker Hub

 

 

Subir Imagenes a Registro Docker

 
Para gestionar correctamente las imagenes Docker, hemos de usar una sintaxis concreta.
 

 

PASOS NECESARIOS PARA SUBIR IMAGENES DOCKER A NUESTRO REGISTRO

 
1 – Autenticarnos en nuestro registro:

docker login --username username --password password

 

2 – Etiquetar la imagen:

docker tag my-image username/my-repo

 

3 – Subir la imagen al registro:

docker push username/my-repo

 

 

1 – Autenticarnos en nuestro registro Docker:

 

El primer paso es configurar la variable de entorno DOCKER_ID_USER como nuestro nombre de usuario (por ej. en Docker Cloud).

export DOCKER_ID_USER="username"

y luego hacer login:

docker login

 

 
docker login
 

 

2. Etiquetar una imagen Docker

 
Si ejecutamos docker tag en la terminal, podremos ver la ayuda del comando:

docker tag

docker tag

 

 

2.1.2 a)  Sintaxis para etiquetar imagenes Docker

 
La sintaxis adecuada para etiquetar imagenes Docker es:

docker tag [OPTIONS] IMAGE[:TAG] [REGISTRYHOST/][USERNAME/]NAME[:TAG]

 

Veamos ejemplos:

según la terminal:

docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]

por ejemplo:

docker tag hypriot/armhf-hello-world:latest hypriot/armhf-hello-world:hello-world

 

También es posible que otras versiones de Docker requieran hacerlo de esta forma:

docker tag my_image $DOCKER_ID_USER/my_image

 

docker tag image

 

Y vemos que se ha creado la imagen de hello-world con la etiqueta que le hemos asignado: hello-world
 

 

3. Subir imagenes a registro Docker con “docker push

 
según la ayuda de la terminal. la sintaxis correcta es:

docker push [OPTIONS] NAME[:TAG] [flags]

También puede funcionar esta otra versión del comando (dependerá del registro que estemos utilizando; más comúnmente Docker Cloud)

docker push $DOCKER_ID_USER/my_image

 

 

Ejemplo de funcionamiento de docker tag y docker push:

root@black-pearl:~# docker tag f897b028160c DOCKER_ID_USER/test:hello-world2
root@black-pearl:~# docker push DOCKER_ID_USER/test
The push refers to repository [docker.io/DOCKER_ID_USER/test]
5f70bf18a086: Mounted from hypriot/armhf-hello-world
3c547ef8d13b: Mounted from hypriot/armhf-hello-world
hello-world2: digest: sha256:f3ebad346b9f4ba1455b8c8831b2507f0b7131e2153b67350b16a87233031a74 size: 730

 
docker hub docker push

 

 

 

Subir o descargar imagenes Docker a un registro Docker, desde Portainer

 

Accedemos a la sección de Images. Y vemos la posibilidad de elegir el registro (a la derecha, y elegimos Docker Hub), el nombre de la imagen que buscamos, y el botón de Download.

Buscamos la imagen, y pulsamos sobre Descargar:

docker portainer pull image

 

 

La imagen ha sido correctamente subida al registro Docker:  Image successfully pulled

docker portainer successfully pulled

 

Y si pulsamos sobre el ID de imagen podremos ver las diferentes imagenes Docker taggeadas (etiquetadas):

Image details:

docker portainer image details

 

 

Los Registros públicos Docker

 

Vamos a ver rapidamente los diversos repositorios Docker que comentábamos anteriormente

 

 

DOCKER HUB

 
docker hub mi repositorio images
 

 

DOCKER CLOUD

 
docker cloud mi repositorio images
 

 

GITHUB DOCKER

 
github docker

 

 

CONCLUSIÓN

 
Los registros Docker son de extrema utilidad para disponer de un repositorio de imagenes Docker accesibles en todo momento, y para tenerlas catalogadas y organizadas. También sirven para compartir los repositorios haciéndolos públicos.

¿A qué esperas para practicar con los registros Docker?  😉