在ubuntu 18.04 VM中
我在代理的后面,我用同一个代理设置了坞配置。
我创建了一个蔚蓝的容器注册表,当尝试从注册表中进行停靠时,它可以工作。
但当试图:
$docker运行节点:6
我得到了错误:"docker:来自守护进程的错误响应:获取https://registry-1.docker.io/v2/:x509:由未知权威机构签名的证书“。
我将注册表添加到/etc/docker/daemon.json:
{
“不安全-注册表”:“注册表-1.docker.io”、"myazureContainerRegistry.azurecr.io“
}
通过执行上述步骤,“运行myazureContainerRegistry.azurecr.io/myimage:tag”有效,但"$docker运行节点:6“仍然提供证书错误。
我已经将"*.docker.io“的证书添加到/etc/docker/certs.d/docker.io,也添加到/usr/local/share/ca-证书(sudo apt update-ca-证书),但它仍然不起作用。
我还试图:
这两个步骤都可以工作,但是对于docker (要运行/拉节点:6),我仍然会得到证书错误。
"$docker --版本“的输出是:”DockerVersion18.09.2“
这就是我的~/..docker/config.json的样子:
我希望“码头运行节点:6”能够成功地提取图像,但实际上会产生错误。
发布于 2019-04-24 09:27:32
对于您的问题,首先,您需要在~/..docker/config.json中获得证书。然后,您可以从注册表中提取图像,而无需登录。然后,您就可以执行命令,而不需要之前拉出图像。对你来说,这样的命令:
docker run registry-1.docker.io/node:6在我这边,config.json会喜欢这样的:

我可以这样执行命令:

停靠中心中注册表的URI是https://index.docker.io/v1/charlesjunqiang。
更新
如果使用证书文件对Docker注册表进行身份验证。然后,您应该执行一些步骤来验证客户端计算机中的Docker注册表。
One:
在目录/usr/local/share/ca-certificates/docker-dev-cert/中添加名为yourname.crt的证书文件。然后执行以下命令:
sudo update-ca-certificates
sudo service docker restartSecord:
在目录/etc/docker/certs.d中创建一个与注册表名称相同的目录,例如,myregistry.azurecr.io。然后在其中添加名为yourname.cert的证书文件。此外,您应该将文件添加为.key,在创建证书文件时自动创建该文件。
然后,您可以登录注册表并按需要运行命令docker run registry-1.docker.io/node:6。
我这边有结果的截图。


https://stackoverflow.com/questions/55826250
复制相似问题