简体   繁体   English

Docker 推送给出“blob 上传未知”

[英]Docker push giving “blob upload unknown”

I am using TFS 2017 builds to push a docker image to Azure container registry.我正在使用 TFS 2017 版本将 docker 映像推送到 Azure 容器注册表。

Build Machine: Ubuntu 16.04 TFS 2017 update 3构建机器:Ubuntu 16.04 TFS 2017 更新 3

the push functionality used to be working fine, suddenly and out of nowhere it started giving an error while trying to upload the image:推送功能曾经运行良好,突然间它在尝试上传图像时开始出现错误:

 /usr/bin/docker login -u ******** -p ******** sdpacr.azurecr.io
 Login Succeeded

 /usr/bin/docker push sdpacr.azurecr.io/calendarmanagement:7787
 The push refers to a repository [sdpacr.azurecr.io/calendarmanagement]

 dc11b75335b3: Preparing
 b61450f05433: Preparing
 a6f0db82af58: Preparing
 03a2d35de712: Preparing
 3abbdf53e460: Preparing
 7f091d9051a0: Preparing
 e27a10675c56: Preparing
 7f091d9051a0: Waiting
 e27a10675c56: Waiting
 a6f0db82af58: Layer already exists
 3abbdf53e460: Layer already exists
 03a2d35de712: Layer already exists
 b61450f05433: Layer already exists
 e27a10675c56: Layer already exists
 7f091d9051a0: Layer already exists
 dc11b75335b3: Pushed
 blob upload unknown
 blob upload unknown
 /usr/bin/docker logout sdpacr.azurecr.io
 Remove login credentials for sdpacr.azurecr.io

I have set up another build agent on windows and installed Docker for windows and it seems to be working fine.我已经在 Windows 上设置了另一个构建代理并为 Windows 安装了 Docker,它似乎工作正常。

what am I missing?我错过了什么? and how can I actually retrieve more info about this error?我如何才能真正检索到有关此错误的更多信息?


EDIT AFTER DEBUG ENABLED调试后编辑

DEBU[0226] Calling POST /v1.24/auth
DEBU[0226] form data: {"password":"*****","serveraddress":"sdpacr.azurecr.io","username":"58e8ba75-9161-4656-96aa-00217a9c929d"}
DEBU[0227] hostDir: /etc/docker/certs.d/sdpacr.azurecr.io
DEBU[0232] hostDir: /etc/docker/certs.d/sdpacr.azurecr.io
DEBU[0232] attempting v2 login to registry endpoint https://sdpacr.azurecr.io/v2/
DEBU[0238] Increasing token expiration to: 60 seconds
DEBU[0244] Calling POST /v1.24/images/sdpacr.azurecr.io/calendarmanagement/push?tag=7789
DEBU[0249] hostDir: /etc/docker/certs.d/sdpacr.azurecr.io
DEBU[0249] hostDir: /etc/docker/certs.d/sdpacr.azurecr.io
DEBU[0249] Trying to push sdpacr.azurecr.io/calendarmanagement to https://sdpacr.azurecr.io v2
DEBU[0250] Pushing repository: sdpacr.azurecr.io/calendarmanagement:7789
DEBU[0250] Pushing layer: sha256:865df7790a65d2bc0ca600f8dc65e324c2931953b915cddf8969d41b1d7dad95
DEBU[0250] Increasing token expiration to: 60 seconds
DEBU[0251] Assembling tar data for 9b3ba858ef55bdfe518861fcd5ffdd1e7bf18ed3880fc8878bae2acf466bff0f
ERRO[0276] Upload failed, retrying: dial tcp: lookup neumanaged118.blob.core.windows.net on 8.8.4.4:53: read udp 192.168.50.112:49447->8.8.4.4:53: i/o timeout
ERRO[0276] Upload failed, retrying: dial tcp: lookup neumanaged118.blob.core.windows.net on 8.8.4.4:53: read udp 192.168.50.112:49447->8.8.4.4:53: i/o timeout
ERRO[0276] Upload failed, retrying: dial tcp: lookup neumanaged118.blob.core.windows.net on 8.8.4.4:53: read udp 192.168.50.112:49447->8.8.4.4:53: i/o timeout
ERRO[0276] Upload failed, retrying: dial tcp: lookup neumanaged118.blob.core.windows.net on 8.8.4.4:53: read udp 192.168.50.112:49447->8.8.4.4:53: i/o timeout
ERRO[0276] Upload failed, retrying: dial tcp: lookup neumanaged118.blob.core.windows.net on 8.8.4.4:53: read udp 192.168.50.112:49447->8.8.4.4:53: i/o timeout
DEBU[0281] Pushing layer: sha256:865df7790a65d2bc0ca600f8dc65e324c2931953b915cddf8969d41b1d7dad95
DEBU[0303] Assembling tar data for 9b3ba858ef55bdfe518861fcd5ffdd1e7bf18ed3880fc8878bae2acf466bff0f
ERRO[0312] Upload failed, retrying: net/http: TLS handshake timeout
ERRO[0318] Upload failed, retrying: blob upload unknown
DEBU[0323] Increasing token expiration to: 60 seconds
ERRO[0327] Upload failed, retrying: net/http: TLS handshake timeout
DEBU[0328] Pushing layer: sha256:865df7790a65d2bc0ca600f8dc65e324c2931953b915cddf8969d41b1d7dad95
DEBU[0343] Assembling tar data for 9b3ba858ef55bdfe518861fcd5ffdd1e7bf18ed3880fc8878bae2acf466bff0f
ERRO[0365] Upload failed, retrying: net/http: TLS handshake timeout
ERRO[0372] Upload failed, retrying: blob upload unknown
DEBU[0387] Pushing layer: sha256:865df7790a65d2bc0ca600f8dc65e324c2931953b915cddf8969d41b1d7dad95
DEBU[0388] Increasing token expiration to: 60 seconds
DEBU[0388] Assembling tar data for 9b3ba858ef55bdfe518861fcd5ffdd1e7bf18ed3880fc8878bae2acf466bff0f
ERRO[0390] Upload failed, retrying: received unexpected HTTP status: 502 Bad Gateway
DEBU[0410] Pushing layer: sha256:865df7790a65d2bc0ca600f8dc65e324c2931953b915cddf8969d41b1d7dad95
DEBU[0410] Assembling tar data for 9b3ba858ef55bdfe518861fcd5ffdd1e7bf18ed3880fc8878bae2acf466bff0f
ERRO[0413] Upload failed: blob upload unknown
ERRO[0413] Attempting next endpoint for push after error: blob upload unknown
DEBU[0413] Skipping v1 endpoint https://sdpacr.azurecr.io because v2 registry was detected

maybe https://github.com/docker/distribution/issues/2225 will help you也许https://github.com/docker/distribution/issues/2225会帮助你

proxy_set_header X-Forwarded-Proto https

need to be added at sdpacr.azurecr.io nginx/apache需要在 sdpacr.azurecr.io nginx/apache 添加

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM