将docker推送到内部Artifactory(6.11.1)时遇到麻烦。 我们已在443端口上通过Docker设置存储库路径安装了Artifactory。
如果我使用artifactory.local.int登录,请拉出图像标签并将其推回原位
docker push artifactory.local/repo/image-name
但是当我建立自己的映像或直接从docker hub提取并尝试推送时 码头工人将尝试连接到端口80并超时,因为Artifactory没有监听该端口。
我还尝试用获得的端口标记图像:
docker push artifactory.local:443/repo/image-name
error parsing HTTP 400 response body: invalid character 'B' looking for the beginning of value: "Bad Request\r\nThis combination of host and port requires TLS.\r\n"
我缺少一些端口或TLS配置吗?为什么我可以将拉动的图像推回原状,但新图像不起作用?
答案 0 :(得分:0)
尝试:
let cars: { id: number, category: string }[] = [
{ "id": 3, "category": "fast car" },
{ "id": 0, "category": "fast car" },
{ "id": 1, "category": "slow car" },
{ "id": 2, "category": "fast car" }
];
您可能需要先登录:
{ "id": 0, "category": "fast car" }
{ "id": 2, "category": "fast car" }
{ "id": 3, "category": "fast car" }
{ "id": 1, "category": "slow car" }
在您的示例中,docker客户端尝试通过端口443访问Artifactory,但使用的是HTTP协议而不是https协议。
答案 1 :(得分:0)
在将任何图像推送到Artifactory之前,必须对其进行标记,有关更多详细信息,请单击Artifactory中的“设置我的按钮”,然后选择将提供详细步骤的docker存储库。
Docker访问方法也很重要,Artifactory使用3种方法 1.储存库路径 2.子域 3.端口方式
您必须基于此方法执行步骤,您可以在Artifactory的HTTP设置中进行设置。
答案 2 :(得分:0)
您不能将HTTPS与存储库路径一起使用,并且不能将反向代理用于Docker-Artifactory集成。如果要继续使用“存储库路径”,则需要配置HTTP;如果要使用HTTPS,则可以使用Port方法或SubDomain(建议使用SubDomain)。