J'utilise docker version 18.09.0, build 4d60db4
sur une machine Windows et j'essaie de me connecter à Artifactory à l'aide de la commande suivante,
Error response from daemon: Get https://docker-registery.company.net/v2/: tls: server selected unsupported protocol version 301
4 Réponses :
Nous avons le même problème après certains Mise à jour Windows
Vous pouvez modifier manuellement la version TLS par défaut dans Windows en modifiant le registre
Modifiez les valeurs nécessaires dans regedit.exe ou stockez ce code sous forme de fichier .reg et exécutez-le.
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319] "SystemDefaultTlsVersions"=dword:00000001 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319] "SystemDefaultTlsVersions"=dword:00000001
J'espère que cela résoudra votre problème
p >
Quelle valeur a fonctionné pour vous? Vous utilisez également Artiactory?
Comme dans l'exemple - valeur «1». lien . Non, je n'utilise pas Artifactory. Mais pour définir ce problème, c'est avec tls (version tls par défaut), essayez d'ouvrir Artifactory dans Google Chrome et dans Internet Explorer. Fonctionne-t-il dans IE?
Essayez ceci,
connexion docker --username = yourUserName --email=abc@company.net dockerregistry.company.net:5000
Evidemment, si vous utilisez un port autre que 5000, indiquez-le après les deux points.
Une fois que vous vous êtes connecté, vous pouvez faire quelque chose comme
docker pull dockerregistry.company.net:5000/ubuntu
ou
docker push dockerregistry.company.net:5000/ubuntu
Aucune des réponses ci-dessus n'a fonctionné pour moi.
Cependant, j'ai réussi à trouver un correctif. Gardez à l'esprit que ce n'est pas une solution parfaite mais une solution de contournement.
C'est parti ...
J'ai ajouté mon registre Artifactory en tant que registre non sécurisé. Voici comment procéder: https://docs.docker.com/registry/insecure/
Par conséquent, en passant la poignée de main TLS.
version du protocole 301
= TLS 1.0 - c'est la version non sécurisée de TLS, qui a été sélectionnée par le serveur (en théorie par Artifactory, mais il peut y avoir un proxy inverse, Tomcat, etc. où TLS peut être configuré également).
Configurez correctement TLS côté serveur (activez la prise en charge de TLS 1.1+) et votre client docker pourra établir une connexion TLS sécurisée. «Registre non sécurisé» est juste une solution de contournement non sécurisée.
Oui, comme je l'ai mentionné dans ma réponse, c'est juste un travail de contournement. Je n'ai pas accès aux configurations de serveur Artifactory donc cela fonctionne pour moi maintenant. Cependant, je vais demander à l'administrateur de configurer le TLS approprié.