我正在使用official Docker registry image,并将其配置为拉取缓存。
我的客户可以登录并推送/拉取本地图像,例如:
docker login -u username -p secret docker.example.local:5000
docker pull docker.example.local:5000/myImage
我已将客户端配置为使用Docker注册服务器作为代理:
root@server:/# cat /etc/docker/daemon.json
{
"registry-mirrors": ["https://docker.example.local:5000"]
}
但是当我的客户试图拉出注册表服务器上尚未出现的图像时,我收到错误消息。示例拉取命令:
docker pull alpine
注册表服务器然后在其日志文件中响应此消息:
error authorizing context: basic authentication challenge for realm \"Registry Realm\": invalid authorization credential
我遇到this SO post建议将Nginx代理服务器放在前面,但这看起来像是一个黑客,如果可能的话,我更喜欢采用一些更干净的方法。
其他人如何在拉式缓存模式下设置他们的注册表服务器 - 您是否找到了比在注册表服务器前设置Nginx代理更好的解决方案?
答案 0 :(得分:1)
您使用了错误的registry-server-name名称 请勿使用 https:// 前缀
#>docker login -u username -p secret docker.example.local:5000