【问题标题】:Docker daemon "unknown: Authentication is required" messageDocker 守护进程“未知:需要身份验证”消息
【发布时间】:2017-06-06 08:45:04
【问题描述】:

我在我的 Mac 上安装了 docker-toolbox。

我运行以下命令登录到我们的私有注册表(JFrog Artifactory 4.1)。在请求和登录成功时提供用户名、电子邮件和密码。

docker login <registry url>

这在我的系统上创建了一个文件 ~/.docker/config.json,其中包含我的凭据。

拉和推图像在一段时间内工作得很好。稍后,当我尝试拉取图像时,我得到了以下结果

b745547eea8f: Retrying in 1 second
8e68617bcad0: Retrying in 1 second
d0a4a553178b: Retrying in 1 second 
4ef6bb1e3944: Retrying in 1 second 
5f70bf18a086: Retrying in 1 second 
69bd93b9db4e: Waiting
unknown: Authentication is required

多次重试,但没有成功。再次运行“docker login”并重试。同样的问题出现了 2-3 分钟。 2-3 分钟后,“docker pull”工作了。

问题

  • 创建~/.docker/config.json 文件后,这些凭据是否会在一定时间后过期?如果是,我怎样才能增加过期时间。
  • 为什么“docker pull”在第二次登录后前 2-3 分钟失败。这与我的本地机器上的时间和由 docker-toolbox 创建的 VirtualBox 上的 VM 上的时间有什么关系吗?

我们即将向我们公司的每个人开放我们的私人注册表。不希望人们在拉图时面对这些事情。

【问题讨论】:

  • 附带说明,您使用的是相对较旧的 Artifactory 版本。最新版本包含多个与 Docker 登录相关的错误修复和增强功能。我建议升级到最新版本。

标签: docker artifactory


【解决方案1】:

您的网址可能是这里的罪魁祸首。由于您没有包含它,因此很难判断您是否使用了这样的东西:

https://artifactory.company.com(正确)

或者这个:

artifactory.company.com:443(不正确)

我体验过使用artifactory.company.com:443这样的登录URL会成功登录,但会出现奇怪的问题,例如无法将图像推送到Artifactory。

如果发生这种情况,要么删除文件 .docker/config.json 并重新登录,要么编辑它,将:artifactory.company.com:443 更改为 https://artifactory.company.com

【讨论】:

    【解决方案2】:

    升级到最新版本的 Artifactory (4.10) 有所帮助。之后就没有看到这个问题了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多