【发布时间】:2019-01-03 18:07:03
【问题描述】:
长期以来,我们一直在计划将securityContext: runAsNonRoot: true 作为我们 pod 配置的要求。
今天测试我了解到,自从v1.8.4(我认为)以来,您还必须为运行容器的用户指定一个特定的 UID,例如runAsUser: 333。
这意味着我们不仅要告诉开发人员确保他们的容器不以 root 身份运行,而且还要指定他们应该以特定的 UID 运行,这使得我们引入这一点变得更加困难。
我是否理解正确?其他人在这个领域做什么?要利用 runAsNonRoot,现在是否需要 Docker 容器使用特定且已知的 UID 运行?
【问题讨论】:
-
好的做法是在 Dockerfile 中定义一个
USER,并考虑使用kubernetes.io/docs/concepts/policy/pod-security-policy 来强制执行安全上下文。 -
而
USER需要有一个数值以避免遇到 CreateContainerConfigError: Error: container has runAsNonRoot and image has non-numeric user (username), cannot verify user is non-root.
标签: security docker kubernetes containers