我通过virtualbox在windows上运行boot2docker 1.4.1。我支持MITM https证书的代理。我通过在/var/lib/boot2docker/profile
中添加以下行来配置代理:
export HTTP_PROXY=<proxyhost>:80
export HTTPS_PROXY=<proxyhost>:80
DOCKER_TLS=no
EXTRA_ARGS="--insecure-registry index.docker.io"
然而,当我运行docker@boot2docker:~$ docker run hello-world
时,我得到了
Unable to find image 'hello-world:latest' locally
Pulling repository hello-world
FATA[0006] Get https://index.docker.io/v1/repositories/library/hello-world/images
: x509: certificate signed by unknown authority
请帮我弄清楚忽略证书错误的正确方法。谢谢!
答案 0 :(得分:20)
修改看起来新的泊坞广告仅适用于certain flavors of Windows 10。如果您仍然停留在Windows 7上,我已经更新了以下内容,以反映我在安装最新版本的docker-toolbox时纠正“证书链中的自签名证书”错误所需的步骤({{3} })。
最后按照这里的答案在Windows 7上运行了这个: Docker 1.11.2
运行https://github.com/boot2docker/boot2docker/issues/347:
,检查这是否是您的问题docker@boot2docker:~$ openssl s_client -showcerts -CApath . -connect index.docker.io:443
(编辑:从-showcerts删除了32并更正了主机名)
在证书链中,您会看到代理已插入自身,并且验证会返回类似这样的错误
Verify return code: 19 (self signed certificate in certificate chain)
如果您遇到同样的问题,请尝试以下步骤:
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://hub.docker.com/的来源(我刚刚使用Notepad ++在Windows中创建了该文件并将其复制到与上述步骤类似的正确位置)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.
答案 1 :(得分:4)