Skip to main content

Values

This document describes the configurable values for the Directus Helm chart.

Configuration Options

The Directus chart supports various configuration options through values. You can customize the deployment by creating a values.yaml file or passing values directly via the --set flag.

Example

To install with custom values:

helm install <release-name> welance-charts/directus -f values.yaml

Or using --set:

helm install <release-name> welance-charts/directus --set key=value

Default Values

The following is the default values.yaml file for the Directus Helm chart:

# Default values for helm-chart.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.

replicaCount: 1

tls: []

db:
hostname: welance-noprod-serverlessv2-tf.cluster-ccr9p5q6kxw9.eu-central-1.rds.amazonaws.com
port: 3306
database: p217-01-develop
username: p217-01-develop
password: "<your-database-password>"

dump:
image: registry.gitlab.com/welance/platform/pipelines/container/images/postgres-backup:0.0.3
enabled: false
schedule: "0 2 * * *"
s3:
bucket: s3://welance-backup-storage/
accessKeyId: "<your-s3-access-key-id>"
secretAccessKey: "<your-s3-secret-access-key>"
region: de
endpoint: https://s3.de.io.cloud.ovh.net

serviceAccount:
create: false
name: directus-service-account # or leave blank to auto-generate based on release name
roles:
create: true
namespace: "" # if empty, uses Release.Namespace

##TO BE OVERRIDDEN
storage:
gid: 1000
uid: 1000
fid: fs-0e7fcf2d3c61da878a

image:
repository: registry.gitlab.com/welance/p222-choco/p222-01-choco.com
pullPolicy: IfNotPresent
tag: "dev"
imagePullSecrets: regcred
commit:
sha: ""
url: ""
branch: ""

configmap:
enabled: true

# Default value for config file content
envFileContent: ""

basicAuthSecret:
enabled: true
data:
auth: "<your-basic-auth-secret>"

registryAuthSecret:
name: regcred
data:
auth: "<your-registry-auth-secret>"

nfs:
enabled: false
storageclassName: ""

deployment:
nodeSelector: {}
securityContext:
enabled: true
runAsUser: 33
runAsGroup: 33
fsGroup: 33
onepassword:
enabled: false
path: ''
annotations: {}
env:
PHP_UPLOAD_MAX_FILESIZE: "300M"
PHP_POST_MAX_SIZE: "300M"
port:
name: http
containerPort: 8055
protocol: TCP
volumes:
- name: uploads
mountPath: /directus/uploads
storage:
path: "/directus/uploads"

liveness:
enabled: false
httpGet:
path: /server/health
port: http

readiness:
enabled: false
httpGet:
path: /server/health
port: http

startup:
enabled: false # to be enabled if the application needs to reach out dependencies at startup
httpGet:
path: /server/startup
port: http

service:
name: service-web
type: ClusterIP
port: 8055

ingresses:
redirect: []
live:
enabled: false
sites: []
web:
name: ingress-web
enabled: true
ingressClassName: "welance-develop"
annotations: {}


resources: {}
# limits:
# cpu: 25m
# memory: 500Mi
# requests:
# cpu: 25m
# memory: 300Mi

redis:
image:
repository: "redis"
tag: "5-alpine"
resources:
limits:
cpu: 25m
memory: 265Mi
requests:
cpu: 25m
memory: 265Mi

quota:
enabled: false
hard:
requests.cpu: "1"
requests.memory: 2Gi
limits.cpu: "2"
limits.memory: 4Gi

autoscaling:
enabled: false
minReplicas: 1
maxReplicas: 100
targetCPUUtilizationPercentage: 80
targetMemoryUtilizationPercentage: 80

Key Configuration Sections

Database Configuration (db)

  • Database connection settings including hostname, port, database name, username, and password

Image Configuration (image)

  • Container image repository, tag, pull policy, and image pull secrets
  • Git commit information (SHA, URL, branch)

Deployment Configuration (deployment)

  • Security context settings
  • Environment variables (PHP upload limits)
  • Container port configuration (8055 for Directus)
  • Volume mounts for uploads
  • Health check probes (liveness, readiness, startup) with Directus-specific endpoints
  • OnePassword integration support

Service & Ingress (service, ingresses)

  • Service type and port configuration
  • Ingress settings

Service Account (serviceAccount)

  • Kubernetes service account configuration
  • Role creation settings

Resources & Scaling

  • Resource limits and requests
  • Redis configuration
  • Resource quotas
  • Horizontal Pod Autoscaling (HPA) settings

Storage & Backup

  • NFS storage configuration
  • Database dump/backup settings with S3 integration (PostgreSQL backup)