Tener un registro público de las imágenes Docker es de gran utilidad.
A veces, sin embargo, vamos a querer construir y almacenar las imágenes que
contienen información o datos que no queremos hacer públicos.
Hay dos opciones
en esta situación:
• Hacer uso de repositorios privados sobre Docker Hub.
• Ejecutar nuestro propio registro detrás del cortafuegos o
firewall.
El equipo de Docker, Inc., tiene el código fuente que
utilizan para ejecutar un registro Docker de código abierto, lo que nos permite
construir nuestro propio registro interno. El registro no tiene actualmente una
interfaz de usuario y sólo está disponible como un servicio API.
Crear un registro desde un contenedor
Crear un registro en un contenedor Docker es muy simple.
Simplemente hay que ejecutar el contenedor provisto por Docker, así:
$ docker run -p 5000:5000 registry:2
Esto ejecutará un contenedor que utiliza la versión 2.0 de
la aplicación de registro y comunica por el puerto 5000 de la máquina local.
Probando el nuevo registro
Vamos a probar el nuevo registro y ver como podemos hacer
uso del mismo. Vamos a intentar subir una de nuestras imágenes
“jalapuente/apache2” a nuestro nuevo registro. En primer lugar, vamos a
identificar el ID de la imagen utilizando el comando “docker images”.
$
docker images jalapuente/apache2
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
jalapuente/apache2 latest 1316d227367f 2 weeks ago 223.7 MB
Después apuntamos nuestro ID de imagen, 1316d227367f, será
la etiqueta del nuevo registro. Para especificar el nuevo destino del registro,
hay que prefijar el nombre de la imagen con el nombre de host y el puerto de
nuestro nuevo registro. En nuestro caso, nuestro nuevo registro tiene un nombre
de host de midocker.
$ docker
tag 1316d227367f midocker:5000/jalapuente/apache2
Después de etiquetar nuestra imagen, podemos enviarla al
nuevo registro con el comando docker push :
$ docker
push midocker:5000/jalapuente/apache2 .
La imagen se publica entonces en nuestro registro local y estará
disponible para poder construir nuevos contenedores, utilizando el comando “docker run”.
$ docker
run –t –i midocker:5000/jalapuente/apache2 /bin/bash
Ésta es la implementación más simple del Registro de Docker
detrás de un cortafuegos.
No hay comentarios:
Publicar un comentario