Docker registry avec certificat auto-signé (--insecure-registry)
Démarrer le registry sur le serveur
docker run -d -p 5000:5000 --restart=always --name registry \ -v {chemin_du_fs_stockage_des_donnes}/data:/var/lib/registry \ registry:2f
Authentification auto-signé (Voir https://docs.docker.com/registry/insecure/ )
myregistrydomain => ip, dns du serveur hébergeant le registryAttention! Pas du tout adapté pour un environnement de PROD !
Génération du certificat sur le serveur hébergeant le registry
mkdir -p certs && openssl req \ -newkey rsa:4096 -nodes -sha256 -keyout certs/domain.key \ -x509 -days 365 -out certs/domain.crtBe sure to use the name myregistrydomain.com as a CN.
Démarrage du registry avec les certificats
docker run -d -p 5000:5000 --restart=always --name registry \ -v {chemin_contenant_les_crt_key}:/certs \ -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt \ -e REGISTRY_HTTP_TLS_KEY=/certs/domain.key registry:2
Coté client
Attention testé uniquement sur Ubuntu, la facon diffère selon les distributions. Cela doit fonctionner sur distribution qui sont basés Debian sur car Ubuntu est développé a partir de celui-ci.RedHat & les autres distribution ont leur propre facon d'ajout de certificat.
- Récupérer le certificat généré utilisé par le registry
- Sous Ubuntu aller dans /usr/local/ca-certificates
- Déposer le certificat update-ca-certificates
- service docker stop
- vi /etc/default/docker
- Ajouter DOCKER_OPTS="--insecure-registry {url-registry}:5000" (Ex: DOCKER_OPTS="--insecure-registry myregistrydomain.com:5000" )
- service docker start
Commandes
myregistrydomain => ip, dns du serveur hébergeant le registry
Déposer une image sur le registry
docker push myregistrydomain.com:5000/{images}/{tag}
Obtenir une image du registry
docker pull myregistrydomain.com:5000/{images}/{tag}
Lister les images dans le docker repository
Sur le serveur hébergeant le registry ont peut trouver les repositories correspondant aux images déposés dans le registry
ls -l {chemin_du_fs_stockage_des_donnes}/data/docker/registry/v2/repositories
Commentaires
Enregistrer un commentaire