无坑畅玩minikube(利用阿里云镜像编译minikube)

Kubernetes占据容器编排的霸主地位,我们一般都会通过minikube实验kubernetes功能,但是minikube是不能直接安装成功的,网上解决方案有2种:
– 科学上网
– 手动通过阿里云下载所需的google镜像

今天我在这里提供第三种方案,这种方案的优势是,我在本文编译的minikube,大家下载回去无需多余设置即可使用。本方法原理是修改minikube源码,将google镜像修改为阿里云镜像.
目前我只在MacOS下做了编译,Windows下原理一样,有时间我会编译一个windows版本供大家下载,大家有兴趣也可以自己编译.

1.安装go并配置GOPATH

  • 使用Homebrew安装go语言:brew install go
  • 在环境变量中配置GOPATH,.bash_profile中添加export GOPATH=~/Documents/go,使用source ~/.bash_profile使配置生效

2.安装docker toolbox

docker-machine create --engine-registry-mirror=https://*.mirror.aliyuncs.com -d virtualbox default
docker-machine env default
eval "$(docker-machine env default)"
docker info
  • 建议将Virtualbox的docker虚拟机的内存至少分配4G

3.下载代码

$GOPATH/src/k8s.io/目录下克隆代码:

cd $GOPATH/src/k8s.io/
git clone https://github.com/kubernetes/minikube.git

大家不要克隆本文的源码,本文的源码只是参考演示作用。

4.替换镜像

用开发工具打开minikube目录,我使用的是Intellij Idea,全局替换gcr.io/google_containersregistry.cn-hangzhou.aliyuncs.com/google_containers
因为我这次使用的minikube版本较新,阿里云没有最新版本的kube-dnskube-dashboard,所以kube-dns-controller.yaml中的image版本由1.14.2改为1.14.1,dashboard-rc.yaml中的image版本由v1.6.1,改为v1.6.0,大家以后自己编译的时候可以在https://dev.aliyun.com/search.html检索下阿里云中最新镜像版本。

5.编译

在minikube目录下执行make命令进行编译,可执行文件将生成在当前目录下的out目录下,其中minikube,minikube-darwin-amd64均可。

6.使用

  • 当前目录执行:
./minikube start

  • 或复制到/usr/local/bin下直接执行:
minikube start
  • 查看pod
    请自行安装kubectl
wangyunfeideMBP:k8s.io wangyunfei$ kubectl get pod --all-namespaces
NAMESPACE     NAME                          READY     STATUS    RESTARTS   AGE
kube-system   kube-addon-manager-minikube   1/1       Running   0          33m
kube-system   kube-dns-3197702416-st4zq     3/3       Running   0          32m
kube-system   kubernetes-dashboard-n883k    1/1       Running   0          32m

镜像全部成功运行.

  • 查看dashboard
wangyunfeideMBP:out wangyunfei$ kubectl proxy
Starting to serve on 127.0.0.1:8001

浏览器访问http://127.0.0.1:8001/ui
image

7.源码地址与二进制文件下载

http://www.wisely.top/2017/06/27/no-problems-minikube/

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试