我正在使用 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 代理服务器,但这似乎是一个 hack,如果可能的话,我更喜欢一些更干净的方法。
其他人如何以拉取缓存模式设置他们的注册表服务器 - 您是否找到比在注册表服务器前面设置 Nginx 代理更好的解决方案?
最佳答案
您使用的 registry-server-name 名称错误。
不要使用 https://字首
#>docker login -u username -p secret docker.example.local:5000
关于docker - 通过缓存模式拉入的私有(private) Docker 注册表返回 "invalid authorization credential",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50097841/