Minikube 是什么 ?
minikube 相当于一个运行在本地的 Kubernetes 单节点,我们可以在里面创建 Pods 来创建对应的服务。
官网描述: Minikube is a tool that makes it easy to run Kubernetes locally. Minikube runs a single-node Kubernetes cluster inside a Virtual Machine (VM) on your laptop for users looking to try out Kubernetes or develop with it day-to-day.
简单来说,就是给你本地开发、测试用的,它在虚拟机里面启用 Kubernetes,这个 Kubernetes 只有一个节点,就是虚拟机本身。
国内使用的一些问题
- k8s.gcr.io 在 minikube 里面无法正常使用
解决方法:
- 使用阿里云的镜像启动 minikube
1 | minikube start --vm-driver=virtualbox --registry-mirror=https://registry.docker-cn.com --image-mirror-country=cn --image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers |
- 创建服务的时候需要替换镜像地址
1 | kubectl create deployment hello-minikube --image=k8s.gcr.io/echoserver:1.10 ## 无法使用 |
这里的 k8s.gcr.io
需要替换成
registry.aliyuncs.com/google_containers
,如下所示
1 | kubectl create deployment hello-minikube --image=registry.aliyuncs.com/google_containers/echoserver:1.10 |
- 拿到了 service 的 url,无法正常打开
这就是因为 service 没有被成功创建,但是 minikube 在运行
kubectl create deployment
之类的命令的时候并没有明确的报错,我们可以使用
minikube logs
来查看错误日志。
解决了网络问题,其实基本上没什么问题了,访问
minikube service hello-minikube --url
得到的 url
可以正常打开了。
1 | Hostname: hello-minikube-6db89b59b4-dh6bh |