minikube Clusterをdeleteしたらkubectlが使えなくなった
ローカル環境でKubernetesのClusterを動かす方法はいろいろある。よく紹介されているのはminikubeを使う方法だが、自分の場合Docker Desktopを使っている。Docker DesktopにはKubernetesが付属しており、追加のインストールなしでClusterを立ててkubectlで操作できる。 先日試しにminikubeを少しだけ使ってみたものの、仕事のタスクを抱えていたため使い慣れたDocker Desktopに戻すことにした。
minikubeのClusterを停止させ、削除する。
minikube stop
minikube delete
すると、Docker Desktopをkubectlで操作することができなくなってしまった。
kubectl config use-context development Error from server (NotFound): the server could not find the requested resource
kubectl config current-context
や kubectl config get-contexts
等も試したが同じエラー。
途方にくれていたが、minikubeのClusterを消したせいで、contextを正常に読み込めていないからではないかと気づく。本来であればkubectlはminikubeと一緒にインストールされるのだが、今回はもともとDocker Desktopによってインストールされたkubectlを使っており、そこにminikubeの設定が追加された形になっていそうだった。
そこでminikubeのcontextを削除してみる。
kubectl config delete-context minikube kubectl config use-context development
今度は正しくcontextを切り替えることができ、他の操作もできるようになった。