编辑 看起来新的docker仅适用于Windows
10的某些版本。如果您仍然停留在Windows
7上,我已经更新了以下内容,以反映安装最新版本的docker-toolbox(Docker
1.11.2)时必须纠正“证书链中的自签名证书”错误的步骤。)。
终于在Windows 7上按照以下答案在Windows
7上工作了:https :
//github.com/boot2docker/boot2docker/issues/347
通过运行openssl s_client
-showcerts检查这是您的问题:
docker@boot2docker:~$ openssl s_client -showcerts -CApath . -connect index.docker.io:443
(编辑:从-showcerts中删除了32个,并更正了主机名)
在证书链中,您将看到代理已插入自身,并且验证返回了类似以下的错误
Verify return pre: 19 (self signed certificate in certificate chain)
如果您遇到相同的问题,请尝试以下步骤:
- 首先,保存所需的证书。这是在Firefox中使用的步骤,IE也可以使用证书导出向导来工作;注意:在Windows上,PEM证书编码称为base-64编码的X.509(.CER)):
- 在Firefox中,转到https://hub.docker.com/
- 单击地址栏上的锁定图标以显示证书
- 单击“更多信息”->“安全性”->“查看证书”->“详细信息”
- 选择层次结构中从最高层开始的每个节点,然后单击“导出”和“保存”(选择X.509证书(PEM)格式)
- 将上述文件保存在本地驱动器中的某个位置,将扩展名更改为.pem并将其移动到用户文件夹(或可通过ssh访问的任何其他位置)
- 创建一个文件夹来保存证书:
docker@boot2docker:~$ sudo mkdir /var/lib/boot2docker/certs/
- 将证书文件复制到该位置:
docker@boot2docker:~$ sudo cp /c/Users/<username>/<folder>/<proxy-cert>.pem /var/lib/boot2docker/certs/
- 创建文件
/var/lib/boot2docker/bootlocal.sh
并包含来自https://gist.github.com/irgeek/afb2e05775fff532f960的源代码(我刚刚使用Notepad ++在Windows中创建了文件,并将其复制到与上述步骤类似的正确位置) - 退出ssh并重新启动:
C:>docker-machine restart
- 打开外壳
docker-machine ssh
并验证所做的更改:docker run hello-world
您应该看到包含以下内容的输出:
Hello from Docker.This message shows that your installation appears to be working correctly.



