Harbor, otro docker registry con muchas opciones

En este post explicaré la instalación y configuración de harbor (http://goharbor.io/), otro software que usaremos como registry de docker, con muchas más opciones qué el oficial y gratuito de docker.

Creamos la ruta /Aplicaciones, de no estar ya creada

Vamos a la ruta /Aplicaciones y descargamos el instalador offline, con el siguiente comando:

wget http://storage.googleapis.com/harbor-releases/release-1.7.0/harbor-offline-installer-v1.7.1.tgz

Descomprimimos el fichero, con el comando

tar xvf harbor-offline-installer-v1.7.1.tgz

Una vez descomprimido, accedemos a la carpeta harbor, y editamos el fichero harbor.cfg

cd harbor; vim harbor.cfg

Cambiamos los siguientes valores:

hostname = reg.mydomain.com por hostname = ip_del_equipo

harbor_admin_password = Harbor12345 por harbor_admin_password = password_seguro

Guardamos el fichero y ejecutamos la instalación con el siguiente comando:

./install.sh

La instalación, subirá las imágenes a docker, en el primer paso

En el segundo paso, configurará los contenedores

El tercer paso, es comprobar si ya existe una instalación previa

Y el cuarto y último paso, consiste en crear los contenedores arrancarlos.

Ya podremos acceder a harbor con la ip de la máquina, con el usuario admin y la contraseña definida en el fichero de configuración

Al acceder, vemos que tenemos un proyecto de acceso público. Primero, crearemos un usuario, para docker. Vamos a la sección de usuarios

Pulsamos en New User y rellenamos todos los datos que nos pide

Al pulsar ok, vemos que ya está creado

Volvemos a la página principal y pulsamos en New Project

En este ejemplo, le asignamos el nombre de imágenes, sin acento para que docker no nos de problemas y no marcamos la opción Public

En el proyecto, nos aparece un botón Push Image. Si lo pulsamos, nos indica los comandos para etiquetar y subir la imagen:

Para poder subir imágenes, tenemos que añadir el usuario al proyecto, para ello, dentro del proyecto, vamos a la pestaña Members y pulsamos en User

Escribimos el usuario docker y marcamos Developer

Nos indica harbor, qué el usuario está añadido correctamente y ya aparece en el listado:

Ahora, tenemos que configurar docker, para que nos permita loguearnos y usarlo, para ello, editamos el fichero /etc/docker/daemon.json o lo creamos

Le añadimos lo siguiente:

{

"insecure-registries" : ["ip_de_harbor"],

"disable-legacy-registry": true

}

Reiniciamos docker, para que tome los cambios

systemctl restart docker

Nos logamos contra el registry, con el siguiente comando:

docker login -u docker ip_de_harbor

Docker nos indica, que se ha logado correctamente y ya podemos hacer push de imágenes.

Ahora etiquetamos una imagen, para luego subirla al registry con el comando:

docker tag debian:latest ip_de_harbor/imagenes/debian:latest

y subimos la imagen, con el siguiente comando:

docker push ip_de_harbor/imagenes/debian:latest

Docker nos indica que ha subido correctamente la imagen. Vamos a Harbor, para comprobarlo.

En el repositorio nos aparece, efectivamente la imagen

Pulsamos dentro de ella, para ver los detalles

Si pulsamos en el cuadro de debajo de Pull Command, nos copia el comando para la descarga de la imagen

docker pull ip_de_harbor/imagenes/debian:latest

De querer o necesitar qué harbor funcione con http, seguiremos los pasos de la doc oficial 

http://github.com/goharbor/harbor/blob/master/docs/configure_http.md

http://pbs.twimg.com/media/DXxZPHrWkAA8NyC.jpg

Un comentario

Dejar una contestacion

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.