安裝
- 通過
brew install docker-machine-driver-xhyve
來安裝minikube - 通過
brew install kubectl
來安裝kubectl
啟動minikube
- 通過命令
minikube start --vm-driver=xhyve
來啟動minikube - 通過命令
kubectl get services
來查看啟動的服務硝枉, 應該可以看到kubernetes 10.0.0.1 <none> 443/TCP 12m
, 表示kubernetes已經(jīng)被啟動起來 - 通過命令
kubectl get pods
來查看啟動的pods, 這個時候應該沒有任何東西 - 通過kubectl來啟動nginx服務
kubectl run --image=nginx nginx-app --port=80
- 然后通過
kubectl get pods
會發(fā)現(xiàn)nginx-app-1666850838-pfr2s 0/1 ContainerCreating 0 5m
倦微,表示一直在ContainerCreating
狀態(tài) - 通過
kubectl describe pod nginx-app-1666850838-pfr2s
可以發(fā)現(xiàn)有錯誤Error syncing pod
- 通過
minikube logs
可以發(fā)現(xiàn)unable to pull sandbox image "gcr.io/google_containers/pause-amd64:3.0"
錯誤妻味, 在網(wǎng)上查了一下可以發(fā)現(xiàn)是由于GFW的原因下載不了 - 執(zhí)行
minikube ssh
進入到 minikube,然后執(zhí)行docker pull registry.cn-hangzhou.aliyuncs.com/google-containers/pause-amd64:3.0
來指定阿里云的倉庫下載google-containers/pause-amd64:3.0
, 然后通過命令docker tag registry.cn-hangzhou.aliyuncs.com/google-containers/pause-amd64:3.0 gcr.io/google_containers/pause-amd64:3.0
來打tag到本地 - 刪掉之前的pod欣福,然后通過describe命令弧可,就可以看到在pull nginx,一段時間之后劣欢,
kubectl get pods
會發(fā)現(xiàn)狀態(tài)變成了nginx-app-1666850838-03h7g 0/1 running 0 1m
- 但是執(zhí)行命令
kubectl get services
發(fā)現(xiàn)棕诵,service還是只有nginx,所以執(zhí)行kubectl expose deployment nginx-app --port=80 --name=nginx-http --type=NodePort
通過NodePort模式暴露一個新的服務凿将,然后通過kubectl get services
可以得到nginx-http 10.0.0.73 <nodes> 80:30716/TCP 2s
- 通過
kubectl cluster-info
來得到Kubernetes master is running at https://192.168.64.2:8443
, 然后執(zhí)行curl '192.168.64.2:30716'
就可以訪問到nginx了, 或者通過minikube service nginx-http
來進行訪問