当国内开发者docker pull遇到如下提示时,不要惊讶
[root@vm /]# docker pull postgres
Using default tag: latest
Error response from daemon: Get "https://registry-1.docker.io/v2/": dial tcp 128.121.146.235:443: i/o timeout
[root@vm /]#
自2024-06-06开始,国内的Docker Hub镜像加速器相继不能正常使用,之前配置的
[root@vm /]# cat /etc/docker/daemon.json
{"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
不论清华、阿里云、科大、163等等都已失效,或只允许内部访问。
其实有更简单、速度更快的办法,以下是经过亲自测试可行。
一、AtomHub可信镜像中心
由开放原子开源基金会牵头,联合多家行业伙伴发起,遵循OCI(Open Container Initiative,以下简称“OCI”)容器镜像标准,旨在为开发者提供开放中立、安全可信、高效便捷的新一代开源容器镜像中心
特点:国内访问速度快(推荐)
网址:https://hub.atomgit.com
例如:搜索自己需要的镜像
然后docker pull hub.atomgit.com/library/postgres:15-alpine3.17
就OK了
二、Chainguard (备用)
Chainguard 是一个专注于提供安全容器镜像的公司,致力于从源头消除 CVE(Common Vulnerabilities and Exposures,通用漏洞和曝光)问题。
特点:镜像文件比较小
https://images.chainguard.dev
搜索镜像
docker pull cgr.dev/chainguard/postgres
简单对比一下速度
[root@vm apisql]# time docker pull cgr.dev/chainguard/postgres
Using default tag: latest
latest: Pulling from chainguard/postgres
d3f07142fdd6: Pull complete
Digest: sha256:fd46506abb83d63993c08da469434079e792de2c6f5459bbb99fbaecf8cc7835
Status: Downloaded newer image for cgr.dev/chainguard/postgres:latest
cgr.dev/chainguard/postgres:latestreal 0m57.700s
user 0m0.019s
sys 0m0.011s[root@vm apisql]# time docker pull hub.atomgit.com/library/postgres:15-alpine3.17
15-alpine3.17: Pulling from library/postgres
ee4b481db132: Pull complete
c701bdac6d5c: Pull complete
efb481014518: Pull complete
7a8407cb3541: Pull complete
f5dd2441c6c6: Pull complete
980832abee30: Pull complete
859d0db327f6: Pull complete
b00939ae8502: Pull complete
Digest: sha256:1a6fab51c426cf01602f93cc13767f92fc333f0a7e598ac6d0640840144ea8b2
Status: Downloaded newer image for hub.atomgit.com/library/postgres:15-alpine3.17
hub.atomgit.com/library/postgres:15-alpine3.17real 0m8.241s
user 0m0.012s
sys 0m0.011s
[root@vm apisql]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
cgr.dev/chainguard/postgres latest 47473ce3dbef 11 hours ago 100MB
hub.atomgit.com/library/postgres 15-alpine3.17 ed93f48a4bd9 10 months ago 248MB
ChainGuard 拉取的镜像体积较小,仅100MB,但需要57秒;
而开放原子开源基金会 AtomHub 提供的镜像体积约为250MB,仅需8秒。
最后,我要特别感谢开放原子开源基金会 AtomHub 的成员单位,他们为开发者做出的贡献是值得称赞的。