我正在尝试设置私有Docker注册表。我已经将其安装在本地服务器上,并确保它在某些域中可用,出于说明目的,我们假设它为hub.mydomain.com
。它具有自签名证书,因此如果不作任何调整,在尝试推送图像时我会期望失败。
所以现在,我用docker image tag traefik:latest hub.mydomain.com/traefik
标记了图像
当我尝试推动它时,我得到以下提示:
$ docker image push hub.mydomain.com/traefik
The push refers to repository [hub.mydomain.com/traefik]
Get https://hub.mydomain.com/v2/: x509: certificate signed by unknown authority
到目前为止,一切都很好-我期望如此。为避免证书出现问题,我想将此注册表视为不安全的,因此我创建了/etc/docker/daemon.json
文件,内容如下:
{
"insecure-registries" : ["hub.mydomain.com:5000"]
}
我用sudo systemctl restart docker.service
重新启动了docker,并检查了docker system info
以确认注册表不安全:
docker system info
Containers: 15
...
Insecure Registries:
hub.mydomain.com:5000
127.0.0.0/8
现在,当我在不安全的注册表中时,我希望证书签名错误应被忽略,但是当我尝试推送它时,仍然会得到:
docker image push hub.mydomain.com/traefik
The push refers to repository [hub.mydomain.com/traefik]
Get https://hub.mydomain.com/v2/: x509: certificate signed by unknown authority
如何忽略此问题?