Assume every key below has a prefix of workload.[workload-name].podSpec.containers.[container-name]
.
Key | Type | Required | Helm Template | Default | Description |
---|---|---|---|---|---|
securityContext | dict |
✅ | ❌ | {{ .Values.securityContext.container }} |
Define securityContext for the container |
securityContext.runAsUser | int |
✅ | ❌ | {{ .Values.securityContext.container.runAsUser }} |
Define the runAsUser for the container |
securityContext.runAsGroup | int |
✅ | ❌ | {{ .Values.securityContext.container.runAsGroup }} |
Define the runAsGroup for the container |
securityContext.readOnlyRootFilesystem | boolean |
✅ | ❌ | {{ .Values.securityContext.container.readOnlyRootFilesystem }} |
Define the readOnlyRootFilesystem for the container |
securityContext.allowPrivilegeEscalation | boolean |
✅ | ❌ | {{ .Values.securityContext.container.allowPrivilegeEscalation }} |
Define the allowPrivilegeEscalation for the container |
securityContext.privileged | boolean |
✅ | ❌ | {{ .Values.securityContext.container.privileged }} |
Define the privileged for the container |
securityContext.runAsNonRoot | boolean |
✅ | ❌ | {{ .Values.securityContext.container.runAsNonRoot }} |
Define the runAsNonRoot for the container |
securityContext.capabilities | dict |
✅ | ❌ | {{ .Values.securityContext.container.capabilities }} |
Define the capabilities for the container |
securityContext.capabilities.add | list |
✅ | ❌ | {{ .Values.securityContext.container.capabilities.add }} |
Define the capabilities.add for the container |
securityContext.capabilities.drop | list |
✅ | ❌ | {{ .Values.securityContext.container.capabilities.drop }} |
Define the capabilities.drop for the container |
securityContext.seccompProfile | dict |
✅ | ❌ | {{ .Values.securityContext.container.seccompProfile }} |
Define the seccompProfile for the container |
securityContext.seccompProfile.type | string |
✅ | ❌ | {{ .Values.securityContext.container.seccompProfile.type }} |
Define the seccompProfile.type for the container (RuntimeDefault, Localhost, Unconfined) |
securityContext.seccompProfile.profile | string |
✅ (Only when Localhost type ) | ❌ | {{ .Values.securityContext.container.seccompProfile.profile }} |
Define the seccompProfile.profile for the container (Only when type is Localhost) |
Each value that is not defined in the
securityContext
under the container level, it will get replaced with the value defined.Values.securityContext.container
. If a capability is defined in eitheradd
ordrop
on container level, it will NOT get merged with the value(s) from the.Values.securityContext.container.capabilities.[add/drop]
. But it will override them.
Appears in:
.Values.workload.[workload-name].podSpec.containers.[container-name].securityContext
Examples:
workload:
workload-name:
enabled: true
primary: true
podSpec:
containers:
container-name:
enabled: true
primary: true
securityContext:
runAsNonRoot: true
runAsUser: 568
runAsGroup: 568
readOnlyRootFilesystem: true
allowPrivilegeEscalation: false
privileged: false
seccompProfile:
type: Localhost
profile: path/to/profile.json
capabilities:
add: []
drop:
- ALL
Notes:
When setting capabilities for containers, remember to NOT include CAP_
prefix.
For example, CAP_NET_ADMIN
should be NET_ADMIN
.