我设置了一个私人registry,运行良好。 Docker 1.10。 我select更换主机,并重新创build证书。 所有在我的服务器上运行良好,但在我的客户服务器上,我无法将图像推送到registry:
unable to ping registry endpoint https://my.customer.private.hostname:5000/v0/ v2 ping attempt failed with error: Get https://my.customer.private.hostname:5000/v2/: Forbidden v1 ping attempt failed with error: Get https://my.customer.private.hostname:5000/v1/_ping: Forbidden
我找不到任何人在Google上讨论“禁止”的答案。 我在哪里可以search了解? 我已经删除了容器,图像,卸载docker,重新安装docker,但仍然是相同的错误。 唯一不删除的是用于存储docker数据的thinpool(devicemapper)。
docker有一个systemd conf文件:
/etc/systemd/system/docker.service.d/http-proxy.conf
同
[Service] Environment =“HTTP_PROXY = http:// proxy:3128 ”Environment =“NO_PROXY = localhost,127.0.0.0 / 8”
registryIP不是本地主机,所以我需要将主机添加到NO_PROXYvariables。 我仍然不明白为什么第一个主持人工作。 不使用https(仅限http)重新启动registry容器并使用tcpdump帮助我们解决此问题。
对于我来说,docker试图通过https访问到5000端口,然后你使用http来curl到同一个端口,这很奇怪。
可能你是这样做的: docker pull my.customer.private.hostname:5000 xxx/yyy而不是docker pull my.customer.private.hostname xxx/yyy
问候