为容器设置安全上下文

Set the security context for a Container

要为容器指定安全设置,需要在容器清单中添加securityContext字段。

securityContext字段是一个securityContext 对象

为容器指定的安全设置仅应用于单个容器,当存在重叠时,它们将覆盖在Pod级别进行的设置。容器设置不影响Pod的卷。

下面是具有一个容器的Pod的配置文件。Pod和容器都有一个securityContext字段:

apiVersion: v1
kind: Pod
metadata:
  name: security-context-demo-2
spec:
  securityContext:
    runAsUser: 1000
  containers:
  - name: sec-ctx-demo-2
    image: gcr.io/google-samples/node-hello:1.0
    securityContext:
      runAsUser: 2000
      allowPrivilegeEscalation: false

创建这个Pod:

kubectl apply -f https://k8s.io/examples/pods/security/security-context-2.yaml

验证Pod的容器正在运行:

$ kubectl get pod security-context-demo-2

在运行的容器中获取一个shell:

$ kubectl exec -it security-context-demo-2 -- sh

在你的shell中,列出正在运行的进程:

$ ps aux

输出显示进程以用户2000的身份运行。这是为容器指定的runAsUser的值。它覆盖为Pod指定的值1000

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
2000         1  0.0  0.0   4336   764 ?        Ss   20:36   0:00 /bin/sh -c node server.js
2000         8  0.1  0.5 772124 22604 ?        Sl   20:36   0:00 node server.js
...
Copyright © weiliang 2021 all right reserved,powered by Gitbook本书发布时间: 2024-04-22 16:03:41

results matching ""

    No results matching ""