簡介
在云計算和云原生環境下,我們會經常使用到海外鏡像部署服務,如谷歌鏡像倉庫(k8s.gcr.io、gcr.io),還有RedHat鏡像倉庫(quay.io),遇到此類鏡像倉庫由于某種神秘力量,我們在國內是無法直接下載,本片文章將介紹如何在不魔法上網的情況下下載海外鏡像,
|
倉庫名稱 |
k8s組件鏡像 |
k8s.gcr.io其他鏡像 |
及時性 |
優勢 |
|---|---|---|---|---|
|
阿里云鏡像倉庫(google_containers) |
支持 |
不支持 |
定時,存在時差 |
無 |
|
阿里云鏡像倉庫(k8sxio) |
支持 |
支持 |
定時,時差較小 |
同步時差小 |
|
中科大鏡像倉庫 |
不支持 |
不支持 |
未知 |
僅支持拉取quay.io鏡像 |
|
lank8s.cn鏡像倉庫 |
支持 |
支持 |
代理,無時差 |
實時同步 |
|
DaoCloud鏡像倉庫 |
支持 |
支持 |
定時,時差較小 |
鏡像倉庫種類多 |
方法一:使用阿里云鏡像倉庫
眾所周知阿里云鏡像市場registry.aliyuncs.com/google_containers倉庫會定期同步k8s.gcr.io的鏡像,但目前只有Kubernetes組件的鏡像,而且同步進度特別慢,而GitHub有位作者創建了一個k8sxio專案來對官方鏡像進行時刻同步,并將同步的鏡像上傳到registry.aliyuncs.com/k8sxio中提供網友下載:
- 源站:
docker pull k8s.gcr.io/kube-apiserve - 改為:
docker pull registry.aliyuncs.com/k8sxio/kube-apiserver
方法二:使用中科大鏡像倉庫
quay.io是Red Hat運營的鏡像倉庫,可以使用中科大鏡像倉庫代為拉取:
- 源站:
docker pull quay.io/kubevirt/virt-api:v0.45.0 - 改為:
docker pull quay.mirrors.ustc.edu.cn/kubevirt/virt-api:v0.45.0
方法三:使用lank8s.cn鏡像倉庫
lank8s.cn是對上游k8s.gcr.io搭建的代理,k8s.gcr.io有的鏡像那么lank8s.cn就可以拉取,該鏡像站來自于作者:https://github.com/lank8s,優勢是直接拉取,不存在時間差,而且支持k8s.gcr.io下的所有鏡像,使用方式:
- 源站:
docker pull k8s.gcr.io/kube-apiserve - 改為:
docker pull lank8s.cn/kube-apiserver
最佳實踐
# 通過lank8s.cn加速安裝kubeadm
kubeadm config images pull --image-repository=lank8s.cn
方法四:使用DaoCloud提供的同步倉庫
通過DaoCloud的鏡像同步倉庫,只需要拉取鏡像的前面添加m.daocloud.io就可以輕松的拉取國外的鏡像,具體資訊可查看GitHub:https://github.com/DaoCloud/public-image-mirror
下面列舉2個案例
- 下載docker.io的鏡像
源站:docker pull docker.io/library/nginx:latest
改為:docker pull m.daocloud.io/docker.io/library/nginx:latest - 下載k8s.gcr.io的鏡像
源站:docker pull k8s.gcr.io/metrics-server/metrics-server:v0.6.1
改為:docker pull m.daocloud.io/k8s.gcr.io/metrics-server/metrics-server:v0.6.1
支持前綴替換的Registry
|
支持的源站 |
更換前綴的方式 |
拼接域名的方式 |
|
cr.l5d.io |
l5d.m.daocloud.io |
m.daocloud.io/cr.l5d.io |
|
docker.elastic.co |
elastic.m.daocloud.io |
m.daocloud.io/docker.elastic.co |
|
docker.io |
docker.m.daocloud.io |
m.daocloud.io/docker.io |
|
gcr.io |
gcr.m.daocloud.io |
m.daocloud.io/gcr.io |
|
ghcr.io |
ghcr.m.daocloud.io |
m.daocloud.io/ghcr.io |
|
k8s.gcr.io |
k8s-gcr.m.daocloud.io |
m.daocloud.io/k8s.gcr.io |
|
registry.k8s.io |
k8s.m.daocloud.io |
m.daocloud.io/registry.k8s.io |
|
mcr.microsoft.com |
mcr.m.daocloud.io |
m.daocloud.io/mcr.microsoft.com |
|
nvcr.io |
nvcr.m.daocloud.io |
m.daocloud.io/nvcr.io |
|
quay.io |
quay.m.daocloud.io |
m.daocloud.io/quay.io |
|
registry.jujucharms.com |
jujucharms.m.daocloud.io |
m.daocloud.io/registry.jujucharms.com |
|
rocks.canonical.com |
rocks-canonical.m.daocloud.io |
m.daocloud.io/rocks.canonical.com |
最佳實踐
# 通過k8s-gcr.m.daocloud.io加速安裝kubeadm
kubeadm config images pull --image-repository=k8s-gcr.m.daocloud.io
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/550139.html
標籤:其他
