Pour utiliser des images de conteneur dans un registre à l'aide de Docker, ajoutez le certificat de registre au client Docker. Le certificat est utilisé pour authentifier Docker lors de la connexion au registre.

Configurez votre client Docker pour qu'il interagisse avec un registre de conteneur, tel que le registre Harbor ou Docker Hub. Cet exemple suppose que vous utilisez le Service de superviseur Harbor.

Conditions préalables

Cette tâche suppose que vous utilisez un hôte Linux (Ubuntu) sur lequel le démon Docker est installé. Pour installer le moteur Docker (démon) sur un hôte Ubuntu, reportez-vous à la section https://docs.docker.com/engine/install/ubuntu/.

Pour vérifier que Docker est installé et que vous pouvez extraire des images depuis le hub de Docker, exécutez la commande suivante :
docker run hello-world
Résultat attendu :
Hello from Docker!
This message shows that your installation appears to be working correctly.
Note : Ces instructions sont vérifiées à l'aide de Ubuntu 20.04 et de Docker 19.03.

Procédure

  1. Connectez-vous au registre Harbor.
  2. Sélectionnez Administration > Configuration > Certificat racine du registre.
  3. Cliquez sur Télécharger pour télécharger le certificat de registre Harbor nommé ca.crt.
    Note : Si nécessaire, modifiez le nom du certificat en ca.crt.
  4. Copiez en toute sécurité le fichier ca.crt sur votre client hôte Docker.
  5. Sur l'hôte Docker, créez un chemin d'accès au répertoire pour le registre privé à l'aide de l'adresse IP de Harbor.
    /etc/docker/certs.d/IP-address-or-FQDN-of-harbor/
    Par exemple :
    mkdir /etc/docker/certs.d/10.179.145.77
  6. Transférez le ca.crt vers ce répertoire.
    Par exemple :
     mv ca.crt /etc/docker/certs.d/10.179.145.77/ca.crt
  7. Redémarrez le démon Docker.
    sudo systemctl restart docker.service
  8. Connectez-vous au registre Harbor intégré à l'aide de votre client Docker.
    docker login https://10.179.145.77
    Vous devriez voir le message suivant :
    WARNING! Your password will be stored unencrypted in /home/ubuntu/.docker/config.json.
    Configure a credential helper to remove this warning. See
    https://docs.docker.com/engine/reference/commandline/login/#credentials-store
    
    Login Succeeded