【发布时间】:2022-02-02 02:29:11
【问题描述】:
我正在尝试从运行 Docker Desktop 的本地 Windows 10 机器将 docker 映像推送到私有 docker 存储库,但没有成功。
docker push 172.19.161.107:5000/ubuntu 命令输出如下:
Using default tag: latest
The push refers to repository [172.19.161.107:5000/ubuntu]
Get "http://172.19.161.107:5000/v2/": dial tcp 172.19.161.107:5000: connect: no route to host
当我转到 URL http://172.19.161.107:5000/v2/ 时,一切看起来都很好。从阅读其他帖子中,很多人都在问curl 说什么,所以这里是输出:
curl -i http://172.19.161.107:5000/v2
HTTP/1.1 301 Moved Permanently
Content-Type: text/html; charset=utf-8
Docker-Distribution-Api-Version: registry/2.0
Location: /v2/
Date: Wed, 02 Feb 2022 02:01:26 GMT
Content-Length: 39
这台机器是 Hyper-V 中的虚拟机。当我从同一交换机上的另一个 VM 推送 ubuntu 图像时,它会被上传到存储库,我可以在目录 api 中看到它,如下所示:
curl -i http://172.19.161.107:5000/v2/_catalog
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Docker-Distribution-Api-Version: registry/2.0
X-Content-Type-Options: nosniff
Date: Wed, 02 Feb 2022 02:10:58 GMT
Content-Length: 37
{"repositories":["alpine","ubuntu"]}
根据我的阅读,这很可能是防火墙问题,但我不知道该去哪里找。在我看来,如果我能够点击 URL 并加载它,那么端口应该是开放的。我还默认允许我的虚拟机上的所有流量。
是什么阻止我将图像从本地计算机推送到我的私有存储库?
我应该去哪里看
【问题讨论】:
标签: docker docker-registry docker-desktop