¿Que es Harbor?
Harbor es un repositorio código abierto que almacena, firma y escanea contenido. Harbor amplía la distribución de Docker de código abierto al agregar las funcionalidades generalmente requeridas por los usuarios, como seguridad, identidad y administración. Tener un registro más cercano al entorno de compilación y ejecución puede mejorar la eficiencia de transferencia de imágenes. Harbor admite la replicación de imágenes entre registros, y también ofrece características de seguridad avanzadas como la gestión de usuarios, el control de acceso y la auditoría de actividades.
Creamos un nuevo proyecto de harbor, en mi caso le llame imagenes
Nos descargamos el certificado, para ello presionamos en registry certificate
Nos conectamos al servidor de Kubernetes y creamos el directorio donde vamos almacenar todos los certificados
mkdir /etc/docker/certs.d/
Copiamos el certificado
cp ca.crt /etc/docker/certs.d/harbor.redorbita.com
Nos logamos contra el harbor
sudo docker login harbor.redorbita
También podemos crear un secret object en kubernetes de la siguiente forma:
kubectl create secret docker-registry harbor \
--docker-server=https://harbor.redorbita.com \
--docker-username=admin \
--docker-email=rokitoh@red-orbita.com \
--docker-password='[password admin harbor]'
Reiniciamos el servicio de docker
sudo systemctl restart docker
Ahora cremos una imagen privada, para ello primeor nos descargamos una imagen
sudo docker pull tomcat
etiquetamos la imagen
sudo docker tag 8973f493aa0a harbor.red-orbita.com/imagenes/tomcat:last
Subimos la imagen
sudo docker push harbor.red-orbita.com/imagenes/tomcat
:wq!