#何が起きた?
k8s1.22に更新したら、アプリをデプロイするときに、k-railから以下のようなお怒りのメッセージをもらった。
Pod had violation: No Root user
#対応方法
とりあえず、PodSpec内に以下を入れて対応
Spec
securityContext:
runAsNonRoot: true
containers:
securityContext:
runAsNonRoot: true
これを入れても以下のようなエラーもでた。
Error: container has runAsNonRoot and image has non-numeric user, cannot verify user is non-root
で、Spec直下のsecurityContextに以下も加えてみたら怒られなくなった
runAsUser: 999
と思ったらまたこんなメッセージが
Container istio-init can run as the root user which is forbidden
istioの公式サイトを見てみたら、https://istio.io/latest/docs/setup/additional-setup/cni/
istio-initを使うとpermissionを調節しなくてはいけなく、面倒くさいので、isito-cniを使った方がいいよと書かれていたのでやっていたらようやく怒られなくなった
#まとめ
今回問題があったアプリはおこられなくなったけど、まだいくつか1.22への更新するために解消しなければいけない問題がありそう。。また進展あったら記録していきます。