在本地通过minikube搭建cluster集群后,往往需要使用wsl执行各种操作,但因为linux和windows的各种差异,不能很好的访问minikube,以下方法可以解决这个问题。
- 在windows安装好minikube
- 在wsl中安装好kubectl
- 通过软链接把windows上的kubenate配置文件指向到wsl中的ubuntu路径
ln -sf "/mnt/c/users/$windowsUser/.kube/config" ~/.kube/config
- 在/usr/local/bin/建立一个minikube文件,输入一下内容,在执行minikube的同时进行config文件里的cert配置。
#!/bin/sh
/mnt/c/Program\ Files/Kubernetes/Minikube/minikube.exe $@
if [ "$1" = 'start' ]
then
kubectl config set-credentials minikube \
--client-certificate=/mnt/c/Users/$windowsUser/.minikube/profiles/minikube/client.crt \
--client-key=/mnt/c/Users/$windowsUser/.minikube/profiles/minikube/client.key --embed-certs
kubectl config set-cluster minikube \
--certificate-authority=/mnt/c/Users/$windowsUser/.minikube/ca.crt --embed-certs
fi
这个代码的主要目的是以内嵌cert的方式解决linux和windows目录格式,现在就可以正常的在wsl像使用linux本地安装kubernate那样使用各种命令了。