Artifactory Docker 登录到存储库本地主机

问题描述 投票:0回答:2

我有一个本地 Jfrog Artifactory Pro。

我使用“http://localhost:8081/artifactory/webapp/#/home”来访问我的 Artifactory。

我创建了本地 Docker 注册表:

我从 Rest API 配置了直接反向代理:

$ curl -u admin:xxxxxx-i "http://127.0.0.1:8081/artifactory/api/system/configuration/webServer"

HTTP/1.1 200 OK
Server: Artifactory/6.2.0
X-Artifactory-Id: de89ec654198c960:3f9aa2d0:167a7c20d5e:-8000
Access-Control-Allow-Methods: GET, POST, DELETE, PUT
Access-Control-Allow-Headers: X-Requested-With, Content-Type, X-Codingpedia
Cache-Control: no-store
Content-Type: application/json
Transfer-Encoding: chunked
Date: Sun, 16 Dec 2018 13:04:52 GMT

{
  "key" : "direct",
  "webServerType" : "DIRECT",
  "artifactoryAppContext" : "artifactory",
  "publicAppContext" : "artifactory",
  "serverName" : "127.0.0.1",
  "serverNameExpression" : "*.localhost",
  "artifactoryServerName" : "localhost",
  "artifactoryPort" : 8081,
  "dockerReverseProxyMethod" : "SUBDOMAIN",
  "useHttps" : false,
  "useHttp" : true,
  "httpsPort" : 443,
  "httpPort" : 8081,
  "upStreamName" : "artifactory"
}

来自神器的配置:

我想通过 docker 客户端登录我的注册表“mylocaldocker”,但出现错误:

$ docker login mylocaldocker.localhost -u admin -p xxxxxx
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
Error response from daemon: Get https://mylocaldocker.localhost/v2/: dial tcp: lookup mylocaldocker.localhost on 192.168.65.1:53: no such host

如何登录artifactory dockerregistry?并向其拉/推图像!?

docker artifactory docker-registry
2个回答
2
投票

首先:与 Artifactory 相关的 docker 登录 -> 配置 -> HTTP 设置 我使用“Docker 访问方法”作为“存储库路径”

docker登录-u admin -p **** x.x.x.x:8081

第二: 由于docker的限制,我们无法使用本地主机登录。 我们应该用真机IP(私有IP)替换“localhost”或“127.0.0.1”。

并将 private_ip:8081 (x.x.x.x:8081) 添加到 docker 中的不安全注册表。 请参阅此链接中的答案:Pull Artifactory Docker Images


0
投票

不是直接回答OP,但我会在这里添加一个答案,因为我发现Artifactory文档相当模糊。我正在使用 Artifactory 6 和 nginx 的 docker-compose 设置,该设置已被弃用,但我很确定这仍然适用于使用 nginx 的较新实例。

进行设置时,您应该有一个与存储库名称对应的 DNS 条目。如果您的主 URL 是 https://artifactory.domain.com,您将需要一个指向同一 IP 的 dockerrepo.artifactory.domain.com DNS 条目。您的 SSL 证书应在 SAN 中具有 dockerrepo.artifactory.domain.com(或 *.artifactory.domain.com 作为通配符)的条目。

然后您可以使用

登录

docker登录dockerrepo.artifactory.domain.com

提供您的用户名(如果使用 SSO,可能是您的 UPN/电子邮件)和密码(如果使用 SSO,请提供您的 API 密钥)。

© www.soinside.com 2019 - 2024. All rights reserved.