将\对接器图像推送到Artifactory

时间:2016-12-21 17:01:04

标签: docker artifactory windows-server-2016

我正试图将docker图像作为CI jenkins工作的一部分推向神器。 我有一个Artifactory安装了url art:8080 我在Win2016上安装了Docker并构建了我的dockerfile。

现在我陷入了如何推送dockerfile的输出图像。 我试过了:

docker tag microsoft / windowsservercore art:8080 / imageID:latest docker push art:8080 / docker-local:latest

但我得到一个错误说明: 获取https://art:8080/v2/:拨打tcp:lookup artifactory:getaddrinfow:不知道这样的主机。

https来自哪里? 如何在我的神器中推送到正确的本地docker repo?

2 个答案:

答案 0 :(得分:2)

Docker要求您使用https。我做的(我使用Nexus而不是Artifactory)是使用nginx设置反向代理。以下是该文档 - https://www.jfrog.com/confluence/display/RTF/Configuring+a+Reverse+Proxy

或者,您可以将Docker设置为不需要https(虽然不推荐)

答案 1 :(得分:0)

由于您询问如何拉,这些步骤适用于企业人工制品,其中证书CA在组织外部不受信任

$ sudo mkdir -p /etc/docker/certs.d/docker-<artifactory-resolverhost>
$ sudo cp /tmp/ca.crt /etc/docker/certs.d/docker-<artifactory-resolverhost>
$ sudo chown root:docker /etc/docker/certs.d/docker-<artifactory-resolverhost>/ca.crt
$ sudo chmod 740 /etc/docker/certs.d/docker-<artifactory-resolverhost>/ca.crt

其中ca.crt是CA受信任证书的base-64链,并且是存储库的解析器主机名。对于前。 repo.jfrog.org(如果您使用的是公共存储库)。确认您可以对“ artifactory-resolverhost”执行ping操作,以确保从您的网络可以访问

然后,您应该能够与属于docker组的用户一起拉取映像。

docker pull docker-<artifactory-resolverhost>/<repository-name>/rhel7-tomcat:8.0.18_4

然后您可以使用以下命令查看下载的图片

docker images