安装Kubernetes默认的image源是:k8s.gcr.io,中国区安装极为痛苦,不FQ就拉取不下来,类似的还有Red Head的quay.io,虽然能下载,但是速度非常的慢。
解决办法来了:
中国区有了以上的docker registry镜像源了:
中科大镜像 https://github.com/ustclug/mirrorrequest
Azure中国镜像 https://github.com/Azure/container-service-for-azure-china
先上总结,方便直接查阅:
总结
鉴于中科大的源经常的出现not fount的错误,所以这里使用Azure的镜像源。
docker.io
docker官方维护
$ docker pull dockerhub.azk8s.cn/library/xxx:yyy |
非官方维护
$ docker pull dockerhub.azk8s.cn/uuu/xxx:yyy |
gcr.io 和 k8s.gcr.io
gcr.io
$ docker pull gcr.azk8s.cn/xxx/yyy:zzz |
k8s.gcr.io
$ docker pull gcr.azk8s.cn/google-containers/xxx:yyy |
quay.io
$ docker pull quay.azk8s.cn/xxx/yyy:zzz |
下面详细讲解:
docker.io 镜像加速
默认的docker registry是:https://hub.docker.com
使用中科大镜像 docker.mirrors.ustc.edu.cn
默认的一种拉取方式:
$ docker pull xxx:yyy |
那么使用中科大镜像的方式:
$ docker pull docker.mirrors.ustc.edu.cn/library/xxx:yyy |
例如:nginx:1.16-alpine
$ docker pull docker.mirrors.ustc.edu.cn/library/nginx:1.16-alpine |
默认的另一种拉取方式:
$ docker pull uuu/xxx:yyy |
那么使用中科大镜像的方式:
$ docker pull docker.mirrors.ustc.edu.cn/uuu/xxx:yyy |
例如:wanghkkk/busyboxplus:latest
$ docker pull docker.mirrors.ustc.edu.cn/wanghkkk/busyboxplus |
默认中科大会提示:Error response from daemon: manifest for docker.mirrors.ustc.edu.cn/wanghkkk/busyboxplus:latest not found
因为默认中科大不会换成镜像的,需要多试几次,等中科大缓存完成后才能下载的。所以这里不推荐用中科大的。
使用Azure中国镜像 dockerhub.azk8s.cn
还是使用上面的两个例子:
nginx:1.16-alpine
wanghkkk/busyboxplus
对应的Azure中国镜像是:
$ docker pull dockerhub.azk8s.cn/library/nginx:1.16-alpine |
这里推荐使用Azure,直接就拉取下来了,不像中科大需要他自己先下载缓存,然后才能下载,至少我试了好几次也没拉取下来。
gcr.io 和 k8s.gcr.io 镜像加速
gcr.io 和 k8s.gcr.io 实际上都是Google的镜像,默认中国区是根本访问不到的。
gcr.io
使用中科大镜像 gcr.mirrors.ustc.edu.cn
默认gcr.io拉取方式:
$ docker pull gcr.io/xxx/yyy:zzz |
那么更换成中科大的拉取方式:
$ docker pull gcr.mirrors.ustc.edu.cn/xxx/yyy:zzz |
例如:
这里使用gcr.io/kubernetes-helm/tiller:v2.16.1为例:
$ docker pull gcr.mirrors.ustc.edu.cn/kubernetes-helm/tiller:v2.16.1 |
使用Azure中国镜像 gcr.azk8s.cn
更换成Azure的拉取方式为:
$ docker pull gcr.azk8s.cn/kubernetes-helm/tiller:v2.16.1 |
k8s.gcr.io
对于按照kubernetes时候,用到的就是k8s.gcr.io开头的镜像,其实k8s.gcr.io就是等价于gcr.io/google-containers
例如:k8s.gcr.io/kube-proxy:v1.15.5
所以呢,对于中科大的拉取方式为:
$ docker pull gcr.mirrors.ustc.edu.cn/google-containers/kube-proxy:v1.15.5 |
对于Azure的拉取方式为:
$ docker pull gcr.azk8s.cn/google-containers/kube-proxy:v1.15.5 |
对于中科大的拉取,经常的出现not found,而对于Azure来说非常的顺畅,很快的拉取下来了,所以非常的推荐使用Azure的镜像源。
quay.io 镜像加速
例如拉取镜像:
quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.26.1
使用中科大镜像 quay.mirrors.ustc.edu.cn
$ docker pull quay.mirrors.ustc.edu.cn/kubernetes-ingress-controller/nginx-ingress-controller:0.26.1 |
使用Azure中国镜像 quay.azk8s.cn
$ docker pull quay.azk8s.cn/kubernetes-ingress-controller/nginx-ingress-controller:0.26.1 |
一个python脚本全搞定
docker-wrapper.py
#!/usr/bin/python |
使用方式:
$ chmod +x docker-wrapper.py |
参考:https://www.ilanni.com/?p=14534#一、docker.io镜像加速
python 脚本GitHub地址:https://github.com/wanghkkk/python/blob/master/docker-wrapper.py
本文到这里就结束了,欢迎期待后面的文章。您可以关注下方的公众号二维码,在第一时间查看新文章。