Perfecto en nuestro pasado post vimos conceptos como Dockerfile, contenedor, imagen y algunos comandos útiles para crear, obtener y correr imágenes en un contenedor, ahora bien estas imágenes comúnmente se almacenan en un repositorio llamado el Container Registry, el contenedor más famoso es Docker Hub, debido a que en él se publican las imágenes más utilizadas en el desarrollo actualmente, claro compañías grandes como Google Cloud, AWS y Azure tienen sus propios registry.
Bien, en este momento y para poder proseguir creemos una cuenta en alguno de estos registry, yo utilizare como base el de docker hub. OK una vez hecho esto vamos a crear un repositorio de forma manual, verán los repositorios tienen un tag específico en mi caso crearé en Docker Hub uno llamado docker-demo, debería terminar con un repositorio similar al siguiente:
Ahora bien los repositorios acá llevan como tag el nombre de tu cuenta, en mi caso blackdie79 y seguido el nombre del repositorio, en este caso docker-demo y esto funciona para identificar de forma correcta de quien y a donde pertenece esta imagen.
Perfecto acá todo fácil, bien ahora en nuestra línea de comandos Bash, powershell o la que estén usando deben escribir:
docker login
Después de esto solo deben de incluir tu usuario y contraseña para autenticarte con tu repositorio de imágenes.
Lo siguiente es aprovechar nuestra pasada imagen que llamamos hello:v1 y pasarla para ser usada en nuestro contenedor, así que de igual manera vamos a nuestra línea de comandos y escribimos:
docker tag hello:v1 blackdie79/docker-demo
¿Que paso? Bien para averiguarlo necesitamos volver a correr nuestro comando para consultar las imágenes que tenemos:
docker image list
Verán que su vieja imagen hello:v1 aún existe y que hay una nueva que se llama como su repositorio en docker hub, algo así como blackdie79/docker-demo:latest y se preguntarán porque latest como tag de esta imagen, esto es porque si no especificamos un tag, docker interpretará que esta es la última creada la más actualizada, perfecto pero si revisamos nuestra cuenta de docker hub aun esta vacía, esto es porque esta nueva imagen esta en local, debemos de subirla, para esto solo debemos de ingresar en nuestra terminal:
docker push blackdie79/docker-demo:latest
Y listo ya hemos creado nuestra primer imagen en un repositorio, imagen que podemos utilizar en cualquier momento para hacer un deploy o un run en local.