イメージ作った環境だと動くんだけどk8sにのっけると起動しなくて CrashLoopBackOff
を繰り返す、ログを見てなんとなく原因はつかめるものの実際にそのイメージで動作している環境に入って調べればすぐわかるのに...というあなたに
止まったpodを作る
$ kubectl edit deploy
して、以下のようにcommandでsleepを指定する。時間はいくらでもいい。
spec:
template:
spec:
containers:
- command:
- /bin/sleep
- "3000"
podに入る
プロセス1番が寝ている間にこっそり入って色々する。
$ kubectl exec -it {$pod_name} /bin/bash
podを殺す
sleepしているpodはdeleteしても消えないしpodに入って kill -KILL 1
しても死なないので、
Kubernetesで消えないPodを強制的に削除する を参考に
$ kubectl delete pods {$pod_name} --grace-period=0 --force