由于网络原因,国内直接从 docker hub、gcr.io 和 quay.io 下载镜像并不顺畅。通过镜像加速(mirrors)是必须的了。本文介绍国内常见的镜像加速站,并以我常用的 Azure 为例介绍具体配置。
Azure 加速器使用
国内目前可用的加速器有很多,Azure 是我使用下来较为全面和稳定的,阿里云的我也常用,但是需要注册且不包含gcr和quay的mirror统一入口。如果你已经有阿里云的加速器地址,可以DockerHub官方镜像使用阿里云配置,gcr和quay另选。更多的加速器在后面提供,大家可以根据情况自由选择。
Azure 不仅有镜像加速,还有其他的安装包等加速,官方:http://mirror.azure.cn/
DockerHub官方镜像
DockerHub 的官方镜像可以通过配置 /etc/docker/daemon.json
的 registry-mirrors
,然后正常使用即可,拉取(pull)镜像的地址并不用更改。非DockerHub官方的镜像,无法通过此方式获得加速,必须用修改镜像地址为加速器专用地址的方式进行。修改方式后面根据情况会分别讲述。
1 | sudo mkdir -p /etc/docker |
registry-mirrors
可配置多个镜像加速器,我用阿里云和Azure基本可达到近8-10M/s,也很稳定。多个镜像加速器是否会有很大的速度或稳定性提升没有严格测试过,我配置两个用的话小镜像略有影响,所以还是配一个。如果你有测试结论,请告诉我。
gcr.io 镜像
对于非 k8s.gcr.io 的gcr.io镜像,一般将域名修改为加速器地址,仓库地址不变即可。
比如,原来要拉取的镜像是 gcr.io/<repo-name>/<image-name>:<version>
形式,使用命令:
1 | docker pull gcr.io/<repo-name>/<image-name>:<version> |
使用Azure加速修改后的地址是 gcr.azk8s.cn/<repo-name>/<image-name>:<version>
,命令如下:
1 | docker pull gcr.azk8s.cn/<repo-name>/<image-name>:<version> |
重新tag镜像,和原始镜像保持一致
当然,下载后的镜像tag和原tag自然不同,如果需要按照原tag使用,执行如下命令重新tag就OK:
1 | docker tag gcr.azk8s.cn/<repo-name>/<image-name>:<version> gcr.io/<repo-name>/<image-name>:<version> |
如果tag后不希望 images 里保留过多tag,可以删除:
1 | docker rmi gcr.azk8s.cn/<repo-name>/<image-name>:<version> |
其他的加速方式一致
k8s.gcr.io 镜像
k8s.gcr.io 下的镜像被映射到加速器的 google_containers
仓库,
即原: k8s.gcr.io/<image-name>:<version>
被映射为: gcr.azk8s.cn/google_containers/<image-name>:<version>
。
如:
1 | k8s.gcr.io/pause-amd64:3.1 |
quay.io 镜像
quay.io 和 gcr.io一致,
原: quay.io/<repo-name>/<image-name>:<version>
修改后: quay.azk8s.cn/<repo-name>/<image-name>:<version>
加速器列表
镜像加速器 | 镜像加速器地址 | 专属加速器? | 其它加速? |
---|---|---|---|
Docker 中国官方镜像 | https://registry.docker-cn.com |
Docker Hub | |
DaoCloud 镜像站 | http://<your_code>.m.daocloud.io |
可登录,系统分配 | Docker Hub |
Azure 中国镜像 | https://dockerhub.azk8s.cn |
Docker Hub、GCR、Quay | |
科大镜像站 | https://docker.mirrors.ustc.edu.cn |
Docker Hub、GCR、Quay | |
阿里云 | https://<your_code>.mirror.aliyuncs.com |
需登录,系统分配 | Docker Hub |
七牛云 | https://reg-mirror.qiniu.com |
Docker Hub、GCR、Quay | |
网易云 | https://hub-mirror.c.163.com |
Docker Hub | |
腾讯云 | https://mirror.ccs.tencentyun.com |
Docker Hub |