認証されたユーザーに対してポッド セキュリティ ポリシーおよびロールベースのアクセス コントロールが構成されていない場合は、コンテナ デプロイ エラーが発生することがあります。

問題

コンテナ ワークロードを TKG 2.0 クラスタにデプロイしても、ワークロードが起動しません。次のようなエラーが表示されます。

Error: container has runAsNonRoot and image will run as root.

原因

TKG クラスタは、PodSecurityPolicy アドミッション コントローラが有効になるようにプロビジョニングされています。認証されたユーザーは、クラスタ管理者が認証されたユーザーに PodSecurityPolicy をバインドするまで、権限のあるポッドまたは権限のないポッドを作成できません。

解決方法

TKR 1.24 以前を使用している場合は、デフォルトの PodSecurityPolicy に適したバインドを作成するか、カスタムの PodSecurityPolicy を定義します。TKR 1.25 以降を使用している場合は、ポッド セキュリティ アドミッションを構成します。TKG サービス クラスタのセキュリティの管理を参照してください。