Installs Directus, the open data platform for headless content management via Helm Chart.
To install Directus, use the following commands.
-
Add Directus Helm repository:
helm repo add directus https://directus-community.github.io/helm-chart/ helm repo update
-
Install Helm Chart with
directus-release
release name:helm install directus-release directus/directus
To uninstall and delete Directus Helm release:
helm delete directus-release
Parameter | Description | Default Value |
---|---|---|
replicaCount |
Number of replicas | 1 |
image.repository |
Image name | directus/directus |
image.pullPolicy |
Image pull policy | IfNotPresent |
image.pullSecrets |
Image pull secrets | {} |
nameOverride |
Replaces the name of the chart | -- |
fullnameOverride |
Replaces the fully qualified app name | -- |
serviceAccount.create |
Create service account | true |
serviceAccount.annotations |
ServiceAccount annotations | {} |
serviceAccount.name |
Service account name to use, when empty will be set to created account if serviceAccount.create is set else to default | `` |
podAnnotations |
Pod annotations | {} |
podSecurityContext |
Pod securityContext | {} |
securityContext |
Deployment securityContext | {} |
service.type |
Kubernetes service type | ClusterIP |
service.port |
Kubernetes port where service is exposed | 80 |
ingress.enabled |
Enables Ingress | false |
ingress.annotations |
Ingress annotations | {} |
ingress.hosts |
Ingress extra paths to prepend to every host configuration | ["chart-example.local"] |
ingress.tls |
Ingress TLS configuration | [] |
resources |
CPU/Memory resource requests/limits | {} |
autoscaling.enabled |
Enables Autoscaling | false |
autoscaling.minReplicas |
Set minimum number of replicas. Only applies when autoscaling.enabled is true . |
1 |
autoscaling.maxReplicas |
Set maximum number of replicas Only applies when autoscaling.enabled is true . |
100 |
nodeSelector |
Node labels for pod assignment | {} |
tolerations |
List of node taints to tolerate | [] |
affinity |
Node/Pod affinities | {} |
extraEnvVars |
Adds extra environment variables. Refer to Directus Docs for more details. | {} |
mariadb.enabled |
Deploys MariaDB server | true |
redis.enabled |
Deploys Redis server | true |
If you want to use an external DB, you need to disable MariaDB by adding mariadb.enabled: false
and add the necessary Environment Variables according to Directus Documentation.
These variables can be added by using the following values:
extraEnvVars:
- name: DB_CLIENT
value: mysql
...
By default, Directus stores the uploaded files on the container disk. Thus the data will be lost when the pod is restarted. You need to configure Directus to use an external storage adapter such as S3, Google Storage and Azure. This can be done by adding the necessary Environment Variables as documented in Directus Documentation.
These variables can be added by using the following values:
extraEnvVars:
- name: STORAGE_LOCATIONS
value: amazon
- name: STORAGE_AMAZON_DRIVER
value: s3
...
- Test on a couple of clusters
- Add a values.production.yaml file that deploys an HA setup