dev*_*221 1 artifactory docker
刚刚创建了一个在 AWS 上运行的自托管 Artifactory。我可以通过 10.100.10.100:8082(不是真实地址)访问 Artifactory UI。我设置了一个 Docker 存储库,该存储库的 UI 中显示的 URL 是http://10.100.10.100:8082/artifactory/myrepo/。Docker登录命令成功,但是Docker推送不起作用。我尝试将图像标记为 10.100.10.100:8082/artifactory/myrepo,但重试几次后,我得到了unknown: not found. 我尝试使用整个 URl 进行标记,包括http://但它不接受它作为标记名称。将标记图像推送到我的自托管 Artifactory 的正确语法是什么?
默认情况下,Artifactory 作为 Docker 注册表是使用存储库路径方法配置的。这意味着,要拉动和推送 docker 镜像,您需要在 url 后面附加存储库密钥、镜像名称和标签。
\n例如:
\n假设 docker 镜像是 alpine 并且标签是最新的。\nArtifactory docker 存储库的类型为 local,存储库密钥为 docker-local。
\n回到上面的例子,
\ndocker login 10.100.10.100:8081\ndocker tag <alpine:latest-image_id> 10.100.10.100:8081/docker-local/alpine:latest\ndocker push 10.100.10.100:8081/docker-local/alpine:latest\ndocker pull 10.100.10.100:8081/docker-local/alpine\nRun Code Online (Sandbox Code Playgroud)\n一些旁注:
\n在版本 7.x 中,可通过端口 8082 访问 Web UI,而 Artifactory\xe2\x80\x99s 服务仍使用端口 8081
\n您可能需要将正在运行的 Artifactory 的 IP 地址:端口添加到 docker 守护程序配置文件中。如下:
\n不安全注册表": [\n"10.100.10.100:8081"\n]
\n有关存储库路径方法的更多信息,请参阅: https: //www.jfrog.com/confluence/display/JFROG/Getting+Started+with+Artifactory+as+a+Docker+Registry#GettingStartedwithArtifactoryasaDockerRegistry-TheRepositoryPathMethod
\n为了补充 Tom.A 的出色答案,我想强调你必须推向正确的方向URL。
如果您的存储库 URL(在 Artifactory 中又称为“文件 URL”)如下所示:
http://10.100.10.100:8082/artifactory/myrepo/
Run Code Online (Sandbox Code Playgroud)
你必须推动:
10.100.10.100:8082/myrepo/myimage:mytag
Run Code Online (Sandbox Code Playgroud)
因此,您必须artifactory从 URL 中删除并相应地标记您的图像。
| 归档时间: |
|
| 查看次数: |
18335 次 |
| 最近记录: |