https://blog.csdn.net/m0_37814112/article/details/115863265
1、查看各版本镜像列表
下载kubeadm:链接
kubeadm config images list --kubernetes-version=v1.19.9
- 可以将docker官方地址
<font style="color:rgb(248, 248, 242);background-color:rgb(40, 42, 54);">k8s.gcr.io</font>
修改为阿里云地址<font style="color:rgb(248, 248, 242);background-color:rgb(40, 42, 54);">registry.cn-hangzhou.aliyuncs.com/google_containers</font>
kubeadm config images list --kubernetes-version=v1.19.9 > k8s-images.list
sed -i 's/k8s.gcr.io/registry.cn-hangzhou.aliyuncs.com\/google_containers/g' k8s-images.list
vim k8s-images.list
##k8s-images-1.19.9
registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver:v1.19.9
registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager:v1.19.9
registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler:v1.19.9
registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy:v1.19.9
registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.2
registry.cn-hangzhou.aliyuncs.com/google_containers/etcd:3.4.13-0
registry.cn-hangzhou.aliyuncs.com/google_containers/coredns:1.7.0
- 添加几个镜像
- registry.cn-hangzhou.aliyuncs.com/google_containers/coredns:1.6.9
- 下载镜像脚本地址:链接
# 导出镜像
./offline-installation-tool.sh -s -l k8s-images.list -d ./kubesphere-images
# 导入镜像到私有仓库
./offline-installation-tool.sh -l k8s-images.list -d ./kubesphere-images -r dockerhub.kubekey.local
vim push_image.sh
#!/bin/bash
old_url=registry.cn-hangzhou.aliyuncs.com/google_containers
new_url=dockerhub.kubekey.local
namespaceOverride=k8s
images=(
kube-apiserver:v1.19.9
kube-controller-manager:v1.19.9
kube-scheduler:v1.19.9
kube-proxy:v1.19.9
pause:3.2
etcd:3.4.13-0
coredns:1.7.0
)
for imagename in ${images[@]} ; do
docker tag ${old_url}/${imagename} ${new_url}/${namespaceOverride}/${imagename}
docker push ${new_url}/${namespaceOverride}/${imagename}
done
- 批量创建项目错误
[root@VM-0-12-centos apps]# yum install dos2unix
[root@VM-0-12-centos apps]# dos2unix m_api.sh
2、使用脚本下载
1. 方法一
vim get_images.sh
#!/bin/bash
set -e
KUBE_VERSION=v1.17.4
KUBE_PAUSE_VERSION=3.1
ETCD_VERSION=3.4.3-0
CORE_DNS_VERSION=1.6.5
GCR_URL=k8s.gcr.io
ALIYUN_URL=registry.cn-hangzhou.aliyuncs.com/google_containers
images=(kube-proxy:${KUBE_VERSION}
kube-scheduler:${KUBE_VERSION}
kube-controller-manager:${KUBE_VERSION}
kube-apiserver:${KUBE_VERSION}
pause:${KUBE_PAUSE_VERSION}
etcd:${ETCD_VERSION}
coredns:${CORE_DNS_VERSION})
for imageName in ${images[@]} ; do
docker pull $ALIYUN_URL/$imageName
docker tag $ALIYUN_URL/$imageName $GCR_URL/$imageName
docker rmi $ALIYUN_URL/$imageName
done
2. 方法二
vim get_image.sh
#!/bin/bash
url=registry.cn-hangzhou.aliyuncs.com/google_containers
version=v1.19.9
images=(`kubeadm config images list --kubernetes-version=$version|awk -F '/' '{print $2}'`)
for imagename in ${images[@]} ; do
docker pull $url/$imagename
docker tag $url/$imagename k8s.gcr.io/$imagename
docker rmi -f $url/$imagename
done
说明:这里采用脚本的方式下载阿里云kubernetes核心镜像,然后修改tag,这样yaml文件的镜像名称就可以不用修改了。