0

我在公司网络中托管的 docker 服务器上有某些 docker 映像。docker 机器工作正常,能够执行所有 docker 命令。

我已经创建了 ACR 存储库,现在想将这些 docker 映像推送到 ACR。可以从 docker 机器访问 ACR

root@artifactory:/home/administrator# curl -Is https://fo25.azurecr.io/v2/
HTTP/1.1 200 Connection established

HTTP/1.1 401 Unauthorized
Server: openresty
Date: Sat, 04 Apr 2020 12:21:29 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 149
Connection: keep-alive
Access-Control-Expose-Headers: Docker-Content-Digest
Access-Control-Expose-Headers: WWW-Authenticate
Access-Control-Expose-Headers: Link
Access-Control-Expose-Headers: X-Ms-Correlation-Request-Id
Docker-Distribution-Api-Version: registry/2.0
Strict-Transport-Security: max-age=31536000; includeSubDomains
Www-Authenticate: Bearer realm="https://fo25.azurecr.io/oauth2/token",service="fo25.azurecr.io"
X-Content-Type-Options: nosniff
X-Ms-Correlation-Request-Id: 354950c2-a4d8-40ac-9b0b-d6f197572284
Strict-Transport-Security: max-age=31536000; includeSubDomains

仍然无法将这些图像推送到 ACR。这是我用来推送图像的命令并遇到以下错误

root@artifactory:/home/administrator# cat pass | docker login --username fo25 --password-stdin https://fo25.azurecr.io/v2/
Error response from daemon: Get https://fo25.azurecr.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

不知道问题出在哪里。我已经检查了用户名、访问密钥等所有内容。URL 也可以访问,因为我们获得了 200 个访问代码。我需要增加超时时间吗?

4

2 回答 2

0

它解决了。这只是代理配置的问题。代理 URL 指向 HTTPS 连接的错误端口,这就是问题所在。

更正到正确的端口后,docker登录成功

于 2020-04-25T05:24:56.930 回答
0

希望您已关注链接。

我在公司网络中看到类似的问题,尝试不同的机器或不同的网络。

于 2020-04-04T15:23:27.083 回答