Windows版Docker不使用客户端证书

时间:2018-07-19 08:50:38

标签: docker docker-registry docker-windows

我在连接到私有Docker注册表时遇到问题。

设置:

  • Windows10 (使用HyperV)
  • 适用于Windows的Docker版本:18.03.0-ce

我执行的步骤:

  1. 将客户端证书放在C:/ProgramData/Docker/certs.d/ /
  2. 将客户端证书放在C:/ Users //。docker / certs.d / /
  3. 在Windows“受信任的根证书颁发机构”中导入的根证书(否则,我将获得“ X509:未知授权机构签名的证书”)

结果:执行docker login <private_registry_url>并插入正确的凭据会给我:

  

来自守护程序的错误响应:获取https:// / v2 /:远程错误:tls:错误的证书

这意味着Docker没有发送正确的客户端证书。 (当我使用客户端证书执行curl -client <file.cert> -key <file.key> https://<private_registry_url>/v2/时,我就可以连接。

当我连接到正在运行的HyperV计算机时,缺少/etc/docker/certs.d/文件夹。如果我手动创建/etc/docker/certs.d/<private_registry_url>并将客户端证书放入其中,一切将开始工作!但是,在重新启动Windows的Docker之后,HyperV计算机中的文件夹certs.d丢失了,并且我无法再次连接到私有注册表。

有什么主意我在做错什么吗?

0 个答案:

没有答案