一段时间以来,我们一直计划将 securityContext: runAsNonRoot: true
作为 pod 配置的要求引入。
今天测试这个我了解到,从 v1.8.4
(我认为)你还必须为运行容器的用户指定一个特定的 UID,例如 runAsUser: 333
。
这意味着我们不仅要告诉开发人员确保他们的容器不以 root 身份运行,而且还要指定他们应该以何种身份运行的特定 UID,这让我们在介绍时遇到了更大的问题。
我是否正确理解了这一点?其他人在这个领域做什么?为了利用 runAsNonRoot
,现在是否需要 Docker 容器使用特定的已知 UID 运行?
最佳答案
Kubernetes Pod SecurityContext 提供了两个选项 runAsNonRoot
和 runAsUser
来强制非 root 用户。您可以单独使用这两个选项,因为它们测试不同的配置。
当您设置 runAsNonRoot: true
时,您要求容器将与具有除 0 以外的任何 UID 的用户一起运行。无论您的用户具有哪个 UID。
当您设置 runAsUser: 333
时,您要求容器与 UID 333 的用户一起运行。
关于security - 在 Kubernetes 中使用 runAsNonRoot,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51544003/