无法提取 docker 图像 - 未找到存储库

Unable to pull docker image - Repository not found

我无法在我的环境中提取 docker 个图像。我认为它被公司防火墙阻止了,但我不确定为什么它会获取图层信息,然后打印出未找到存储库。

sudo docker pull hello-world
latest: Pulling from hello-world
50a54e1f9180: Pulling fs layer
7a5a2d73abce: Pulling fs layer
Pulling repository hello-world
Repository not found

Docker 版本:(我无法在 RHEL 6.9 上升级到最新的 docker)

Docker version 1.7.1, build 786b29d/1.7.1

有人可以向我解释一下在 docker 图像拉取阶段使用了哪些协议(仅 https?)以及联系了哪些地址(仅“https://registry-1.docker.io/v2”?)?

Docker 图片可以包含多个图层。默认情况下,Docker 守护程序将一次拉取三层图像,但如果图像层数较少,则拉取较少。此外,如果未提供标签,Docker 引擎默认使用 :latest 标签。以上是您的拉取请求的基本日志,表明 docker 尝试拉取图像层但失败,可能是由于防火墙限制或较旧的 docker 版本。

Docker uses the https:// protocol to communicate with a registry, unless the registry is allowed to be accessed over an insecure connection.

不确定它尝试连接哪些地址来拉取图像。

问题是防火墙在拉取映像期间阻止了连接。 Docker 注册表使用 CDN,因此需要允许更多 URL,而不仅仅是注册表 URL。

我请求在公司防火墙上允许以下 URLs,它现在正在运行。

dseasb33srnrn.cloudfront.net
auth.docker.io
elb-registry.us-east-1.aws.dckr.io.
us-east-1-elbregis-10fucsvj1tcgy-133821800.us-east-1.elb.amazonaws.com
registry-1.docker.io
registry-origin.docker.io
index.docker.io
elb-io.us-east-1.aws.dckr.io
us-east-1-elbio-rm5bon1qaeo4-623296237.us-east-1.elb.amazonaws.com

Docker 日志文件 (/var/log/docker) 帮助我确定根本问题。 存在以下错误:

level=error msg="Error from V2 registry: Get https://dseasb33srnrn.cloudfront.net/registry-v2/docker/registry/v2/blobs/sha256/78/78445dd45222097f5f8d5a16e48dc19c4ca162dcdb80010ab6f1ccfc7e2c0fa3/data?Expires=1493033299&Signature=DiEmffSxF1F9z-SRoGyX3NwzfeQY3BhE2Du3aPb1qy9VglXyn1mus7Xy9Y~DQnwaQ9IIN71FboK5lOAiN1Qj-x662qhioi72CJ-v02fiMHqC03FDb0l4LyULquU8GaalW3uZG4hdfuSqOBQ1qo9HEcxhMyQGqOqpfPUKjUlHqm8_&Key-Pair-Id=APKAJECH5M7VWIS5YZ6Q: read tcp 52.85.173.110:443: connection reset by peer"

我在此处找到需要允许的 URL 列表: https://forums.docker.com/t/list-of-docker-hub-mirror-sites-to-configure-proxy-whitelist/20845/2