我使用 docker 引擎 2.0.0.0-win77 (28777)。在我的 macOS 上,我成功地从公司的私有(private) docker 注册表中提取了图像。然后我想在我的 Windows 机器上执行此操作。在我做任何事情之前,我有:
> docker pull <company.docker.url>/<some image>
Error response from daemon: Get https://<company.docker.url>/v2/: x509: certificate signed by unknown authority
然后,我将证书导入到我的 Windows 用户证书存储中。 现在我有:
> docker pull <company.docker.url>/<some image>
Error response from daemon: Get https://<company.docker.url>/v2/: remote error: tls: handshake failure
这次失败后我尝试了:
- 已将证书导入我的 Windows 全局证书存储区。
将文件
client.cert
、client.key
和ca.crt
复制到我的 Windows 10 到:C:\ProgramData\Docker\certs.d\
\ C:\Users\
\.docker\certs.d\ \
可悲的是,我仍然得到这个:
> docker pull <company.docker.url>/<some image>
Error response from daemon: Get https://<company.docker.url>/v2/: remote error: tls: handshake failure
还有两点需要注意:
- 如果我切换到 Windows Containers,我可以成功登录或拉取图像,只有 Linux Containers 版本会失败。
- 我的私有(private)证书由一个中间证书签名,中间证书包含在我的
client.cert
中。
我读过的一些引用资料:
最佳答案
我会尝试两件事:
- 您是否尝试过:docker login 先拉取图像?
- 重启客户端并重复。
关于docker - 无法通过 SSL 使用 Docker for Windows 拉取 docker 镜像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51079171/