简介
新手使用kubeadm搭建k8s最困难的一件事情就是下载k8s的docker镜像,那么有没有好的方法呢,之前最常用的就是使用Dockerfile在上面加上FROM+你要下载的镜像字段,然后使用dockerhub把这个镜像编译起来,之后我们本地pull下dockerhub上已经编译好的镜像,接着重新tag这个镜像,这样做是可以实现,但是太过于麻烦,当然还有其他的,就是有的人会把固定版本的k8s所有需要的镜像放到百度云或者哪里,你去下载导入,这个就是更恶心的做法了,你完全不知道你的镜像是不是完全的,或者有没有被别人修改过什么的。今天我发现了一个项目可以让你方便的pull镜像,原理就是使用第一种方法
项目地址
https://github.com/cheerego/docker-wrapper
使用方法
首先下载
wget https://github.com/cheerego/docker-wrapper/files/3385677/linux.zip
解压
unzip linux.zip
之后查看你所需要下载的镜像
kubeadm config images list
╭─[email protected] ~/linux
╰─➤ kubeadm config images list 1 ↵
I0811 12:36:33.271349 18240 version.go:96] could not fetch a Kubernetes version from the internet: unable to get URL "https://dl.k8s.io/release/stable-1.txt": Get https://dl.k8s.io/release/stable-1.txt: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
I0811 12:36:33.271477 18240 version.go:97] falling back to the local client version: v1.14.0
k8s.gcr.io/kube-apiserver:v1.14.0
k8s.gcr.io/kube-controller-manager:v1.14.0
k8s.gcr.io/kube-scheduler:v1.14.0
k8s.gcr.io/kube-proxy:v1.14.0
k8s.gcr.io/pause:3.1
k8s.gcr.io/etcd:3.3.10
k8s.gcr.io/coredns:1.3.1
之后直接pull
cd linux
./docker-wrapper pull k8s.gcr.io/kube-apiserver:v1.14.0
./docker-wrapper pull k8s.gcr.io/kube-controller-manager:v1.14.0
./docker-wrapper pull k8s.gcr.io/kube-scheduler:v1.14.0
./docker-wrapper pull k8s.gcr.io/kube-proxy:v1.14.0
./docker-wrapper pull k8s.gcr.io/pause:3.1
./docker-wrapper pull k8s.gcr.io/etcd:3.3.10
./docker-wrapper pull k8s.gcr.io/coredns:1.3.1
之后镜像会直接自动下载下来并且完成tag
欢迎关注我的博客www.bboy.app
Have Fun