解决来自守护程序的错误响应:获取https://registry-1.docker.io/v2/:x509:未知授权机构签名的证书

时间:2020-02-23 14:31:50  来源:igfitidea点击:

介绍

如果我们想从Docker注册表中拉出一个容器并遇到错误:来自守护程序的错误响应:获取https://registry-1.docker.io/v2/:x509:未知授权机构签名的证书,那么我们希望本教程将解决问题。我们假设我们已准备好SSL证书,因为这不会涵盖SSL证书的创建。

Error response from daemon: Get https://registry-1.docker.io/v2/: x509: certificate signed by unknown authority

安装ca证书

我在CentOS 7服务器上工作。因此,运行以下命令以安装ca-certificates

sudo yum check-update ca-certificates; (($?==100)) && sudo yum update ca-certificates || sudo yum -y reinstall ca-certificates

在/etc/docker/certs.d中创建目录

Docker建议我们必须将证书放置在/etc/docker/certs.d中,该目录具有注册表和端口的域。如果我们使用的是私人注册表,请遵循该样式。

sudo mkdir -p /etc/docker/certs.d/registry-1.docker.io:443

复制SSL证书

现在将SSL证书复制到上面创建的目录中

sudo cp CA.crt registry-1.docker.io:443/
sudo cp server.crt registry-1.docker.io:443/
sudo cp server.key registry-1.docker.io:443/

重新启动Docker

一旦完成了证书的生成和填充。重新启动docker服务。

sudo systemctl restart docker

现在我们应该可以拉出图像了

$sudo docker pull alpine
Using default tag: latest
latest: Pulling from library/alpine
89d9c30c1d48: Extracting [=============>                          ]  753.7kB/2.787MB