可以将docker图像推送到Artifactory,但无法拉动

时间:2016-03-08 19:56:32

标签: docker artifactory devops

目前有一个奇怪的问题,试图从Artifactory下载我的码头图片,任何拍摄都会受到赞赏。

当我运行'docker pull'时,我得到以下内容:

[mark@host]$ sudo /usr/bin/docker pull ficc-artifactory.bns/product/docker-image:0.2.0
Error response from daemon: unknown: Not Found

这让我觉得很好,也许我需要先登录到注册表(以便守护进程知道它),但没有骰子:

[mark@host]$ sudo /usr/bin/docker login -u "mark" -p "pwd" -e "mark@email.com" ficc-artifactory.bns
Error response from daemon: Unexpected status code [404] : {
  "errors" : [ {
    "status" : 404,
    "message" : "Not Found"
  } ]
}

请注意证书已到位:

[mark@host]$ sudo ls -ltr /etc/docker/certs.d/ficc-artifactory.bns/ca.crt
-rw-r--r-- 1 root root 1064 Jan 14 00:15 /etc/docker/certs.d/ficc-artifactory.bns/ca.crt

需要注意的是,我可以毫无问题地“停靠推送”到存储库。

此外,我已确认'mark'用户拥有充当Docker注册表的Artifactory存储库的所有可用权限。

我确信这是相当微不足道的,但任何见解都会非常感激。感谢。

2 个答案:

答案 0 :(得分:1)

我在使用docker 1.12.x的RHEL 7上遇到了同样的问题。我为修复此问题所做的是在启动时将以下选项添加到docker守护程序OPTIONS='--selinux-enabled --log-driver=journald --signature-verification=false'

重要的部分是将--signature-verification=false添加到docker守护程序之后我的神器连接有效!

如果您使用systemd或systemctl,则可以将其添加到/etc/sysconfig/dockerdocker.service /usr/lib/systemd/system/docker.service文件。

答案 1 :(得分:0)

这似乎是一个老话题,但无论如何我都会说话。

docker login不是问题。如果是,您的错误消息将类似于:Error response from daemon: Get https://artifactory.company.com/v2/docker_image/manifests/latest: unknown: Authentication is required

这似乎是您的反向代理无法正确转发请求的问题。

就像在@fundeldman问:你可以发布反向代理的配置吗?