我试图从dockerhub拉出elasticsearch图像时遇到以下错误。
docker-compose pull
Pulling elasticsearch (elasticsearch:2.2.0)...
Pulling repository docker.io/library/elasticsearch
ERROR: Error while pulling image: Get https://index.docker.io/v1/repositories/library/elasticsearch/images: x509: certificate signed by unknown authority
Failed to run with docker-compose
我的公司有一个中间根CA,我怀疑是导致问题。有什么想法我应该如何配置Docker使用公司Root CA?
我通过在以下目录中添加CA root .crt
文件来解决问题:/etc/docker/certs.d/docker.io
使用Unbuntu 14:04
和Docker version 1.10.0, build 590d5108
解决docker-compose version 1.6.0, build d99cad6
的步骤:
DER
格式导出公司中间根CA证书mkdir -p /etc/docker/certs.d/docker.io/
cp <cert from step one>.crt /etc/docker/certs.d/docker.io/
service docker restart
docker-compose pull
现在工作和elasticsearch图像下载在本机docker(我在mac上),这可以通过添加到不安全的注册表配置来解决。首选项>高级>不安全的注册表
/usr/local/share/ca-certificates
。sudo update-ca-certificates
sudo service docker restart
这可能发生在可能没有根CA签名证书的本地或用户注册表上(这些可能是自签名的)。您可以使用以下步骤使用这些注册表:
sudo systemctl edit docker.service
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd <some params...> --insecure-registry <your registry here> <other params...>
sudo systemctl daemon-reload
重新加载配置sudo systemctl restart docker.service
重启Docker