6.3 KiB
Environment Variable
Key: env
Info:
- Type:
dict - Default:
{} - Helm Template:
- key: ❌
- value: ✅
- secretKeyRef.name: ✅
- secretKeyRef.key: ✅
- configMapKeyRef.name: ✅
- configMapKeyRef.key: ✅
Can be defined in:
.Values.env.Values.additionalContainers.env.Values.initContainers.env.Values.installContainers.env.Values.upgradeContainers.env.Values.systemContainers.env.Values.jobs.[job-name].podSpec.containers.[container-name].env
Contains environment variables and can be defined in few different formats
Examples:
env:
# Key/Value pairs
ADMIN_PASS: password
# Key/Value pairs (tpl)
ADMIN_PASS: "{{ .Values.app.password }}"
# ConfigMap Key Reference
ADMIN_PASS:
configMapKeyRef:
name: configMap_name
key: configMap_key
# ConfigMap Key Reference (tpl)
ADMIN_PASS:
configMapKeyRef:
name: "{{ .Values.config.name }}"
key: "{{ .Values.config.key }}"
# Secret Key Reference
ADMIN_PASS:
secretKeyRef:
optional: true / false
name: secret_name
key: secret_key
# Secret Key Reference (tpl)
ADMIN_PASS:
secretKeyRef:
optional: true / false
name: "{{ .Values.config.name }}"
key: "{{ .Values.config.key }}"
Key: envList
Info:
- Type:
list - Default:
[] - Helm Template:
- name: ✅
- value: ✅
Can be defined in:
.Values.envList.Values.additionalContainers.envList.Values.initContainers.envList.Values.installContainers.envList.Values.upgradeContainers.envList.Values.systemContainers.envList.Values.jobs.[job-name].podSpec.containers.[container-name].envList
Mainly designed to be used in the SCALE GUI. So users can pass additional environment variables.
Examples:
envList:
# List entry
- name: ADMIN_PASS
value: password
# List entry (tpl)
- name: "{{ .Values.envName }}"
value: "{{ .Values.password }}"
Key: envFrom
Info:
- Type:
list - Default:
[] - Helm Template:
- name: ✅
- value: ✅
Can be defined in:
.Values.envFrom.Values.additionalContainers.envFrom.Values.initContainers.envFrom.Values.installContainers.envFrom.Values.upgradeContainers.envFrom.Values.systemContainers.envFrom.Values.jobs.[job-name].podSpec.containers.[container-name].envFrom
Used to load multiple environment variables
from a configMap or a secret. With a single list entry,
it will load all keys as environment variables
defined in the specified object.
Examples:
envFrom:
# List entry
- secretRef:
name: secretName
- configMapRef:
name: configMapName
# List entry (tpl)
- secretRef:
name: "{{ .Values.secretName }}"
- configMapRef:
name: "{{ .Values.configMapName }}"
Key: TZ
Info:
- Type:
string - Default:
UTC - Helm Template: ❌
Can be defined in:
.Values.TZ.Values.additionalContainers.TZ.Values.initContainers.TZ.Values.installContainers.TZ.Values.upgradeContainers.TZ.Values.systemContainers.TZ.Values.jobs.[job-name].podSpec.containers.[container-name].TZ
Usually defined from the SCALE's GUI dropdown. It is also injected as environment variable into the container. It can also be used to pass timezone to other environment variables an app would use.
Only applied used when
injectFixedEnvsis set totrue.
Example:
TZ: UTC
env:
PHP_TZ: "{{ .Values.TZ }}"
Key: security
Info:
-
Type:
dict -
Default:
security: PUID: 568 UMASK: 002 -
Helm Template: ❌
Can be defined in:
.Values.security.Values.additionalContainers.security.Values.initContainers.security.Values.installContainers.security.Values.upgradeContainers.security.Values.systemContainers.security.Values.jobs.[job-name].podSpec.containers.[container-name].security
Used to define a default PUID and UMASK to containers.
If not defined it will use the
.Values.global.defaults.securityOnly applied used wheninjectFixedEnvsis set totrue.
Examples:
security:
PUID: 0
UMASK: 002
Key: nvidiaCaps
Info:
-
Type:
list -
Default:
nvidiaCaps: - all -
Helm Template: ❌
Can be defined in:
.Values.nvidiaCaps.Values.additionalContainers.nvidiaCaps.Values.initContainers.nvidiaCaps.Values.installContainers.nvidiaCaps.Values.upgradeContainers.nvidiaCaps.Values.systemContainers.nvidiaCaps.Values.jobs.[job-name].podSpec.containers.[container-name].nvidiaCaps
Defines the value of nvidia capabilities variable that will be injected in the container.
If it's empty it will use the
.Values.global.defaults.nvidiaCapsOnly applied when a GPU is passed through
Example:
nvidiaCaps:
- compute
- utility
Key: injectFixedEnvs
Info:
- Type:
boolean - Default:
true - Helm Template: ❌
Can be defined in:
.Values.injectFixedEnvs.Values.additionalContainers.injectFixedEnvs.Values.initContainers.injectFixedEnvs.Values.installContainers.injectFixedEnvs.Values.upgradeContainers.injectFixedEnvs.Values.systemContainers.injectFixedEnvs.Values.jobs.[job-name].podSpec.containers.[container-name].injectFixedEnvs
If enabled, injects environment variables to the container.
If not defined, it will use the
.Values.global.defaults.injectFixedEnvs
TZ:
Applied always. No conditions.
UMASK, UMASK_SET:
Applied always. No conditions.
NVIDIA_VISIBLE_DEVICES:
Applied and set to
void, if container has no GPU pass through.
NVIDIA_DRIVER_CAPABILITIES:
Applied when a GPU is passed through to the container. Value is defined based on the
nvidiaCapskey
PGID, GROUP_ID, GID:
Applied when container runs as
rootuser orrootgroup.PGID,GROUP_ID,GIDis always equal tofsGroup.
PUID, USER_ID, UID:
Applied when container runs as
rootuser orrootgroup.
S6_READ_ONLY_ROOT:
Applied when container runs as
rootuser orrootgroup or hasreadOnlyRootFilesystemset to true
Example:
injectFixedEnvs: true
Kubernetes Documentation: