无法将Docker构建的映像推送到SSL工件

时间:2019-11-18 22:13:20

标签: docker artifactory

将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配置吗?为什么我可以将拉动的图像推回原状,但新图像不起作用?

3 个答案:

答案 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)。