## Global Docker image parameters ## Please, note that this will override the image parameters, including dependencies, configured to use the global value ## Current available global Docker image parameters: imageRegistry and imagePullSecrets ## # global: # imageRegistry: myRegistryName # imagePullSecrets: # - myRegistryKeySecretName # storageClass: myStorageClass ## Bitnami Drupal image version ## ref: https://hub.docker.com/r/bitnami/drupal/tags/ ## image: registry: docker.io repository: bitnami/drupal tag: 9.0.2-debian-10-r0 ## Specify a imagePullPolicy ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' ## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images ## pullPolicy: IfNotPresent ## Optionally specify an array of imagePullSecrets. ## Secrets must be manually created in the namespace. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ ## pullSecrets: # - myRegistryKeySecretName ## Set to true if you would like to see extra information on logs ## It turns BASH debugging in minideb ## debug: false ## String to partially override drupal.fullname template (will maintain the release name) ## nameOverride: ## String to fully override drupal.fullname template ## fullnameOverride: ## Number of replicas (requires ReadWriteMany PVC support) ## replicaCount: 1 ## Installation Profile ## ref: https://github.com/bitnami/bitnami-docker-drupal#configuration ## drupalProfile: standard ## User of the application ## ref: https://github.com/bitnami/bitnami-docker-drupal#configuration ## drupalUsername: user ## Application password ## Defaults to a random 10-character alphanumeric string if not set ## ref: https://github.com/bitnami/bitnami-docker-drupal#configuration ## drupalPassword: "" ## Admin email ## ref: https://github.com/bitnami/bitnami-docker-drupal#configuration ## drupalEmail: user@example.com ## Set to `yes` to allow the container to be started with blank passwords ## ref: https://github.com/bitnami/bitnami-docker-drupal#environment-variables ## allowEmptyPassword: "yes" ## Container command (using container default if not set) ## command: ## Container args (using container default if ot set) ## args: ## Common annotations to add to all Harbor resources (sub-charts are not considered). Evaluated as a template ## commonAnnotations: {} ## Common labels to add to all Harbor resources (sub-charts are not considered). Evaluated as a template ## commonLabels: {} ## Update strategy - only really applicable for deployments with RWO PVs attached ## If replicas = 1, an update can get "stuck", as the previous pod remains attached to the ## PV, and the "incoming" pod can never start. Changing the strategy to "Recreate" will ## terminate the single previous pod, so that the new, incoming pod can attach to the PV ## updateStrategy: type: RollingUpdate ## An array to add extra env vars ## For example: ## extraEnvVars: [] # - name: BEARER_AUTH # value: true ## ConfigMap with extra environment variables ## extraEnvVarsCM: ## Secret with extra environment variables ## extraEnvVarsSecret: ## Extra volumes to add to the deployment ## extraVolumes: [] ## Extra volume mounts to add to the container ## extraVolumeMounts: [] ## Extra init containers to add to the deployment ## initContainers: [] ## Extra sidecar containers to add to the deployment ## sidecars: [] ## Tolerations for pod assignment. Evaluated as a template. ## Ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ ## tolerations: [] ## Use existing secret for the application password ## existingSecret: ## External database configuration ## externalDatabase: ## Database host ## host: localhost ## Database host ## port: 3306 ## Database user ## user: bn_drupal ## Database password ## password: "" ## Database name ## database: bitnami_drupal ## ## MariaDB chart configuration ## ## https://github.com/bitnami/charts/blob/master/bitnami/mariadb/values.yaml ## mariadb: ## Whether to deploy a mariadb server to satisfy the applications database requirements. To use an external database set this to false and configure the externalDatabase parameters ## enabled: true ## Disable MariaDB replication ## replication: enabled: false ## Create a database and a database user ## ref: https://github.com/bitnami/bitnami-docker-mariadb/blob/master/README.md#creating-a-database-user-on-first-run ## db: name: bitnami_drupal user: bn_drupal ## If the password is not specified, mariadb will generate a random password ## password: "" ## MariaDB admin password ## ref: https://github.com/bitnami/bitnami-docker-mariadb/blob/master/README.md#setting-the-root-password-on-first-run ## rootUser: password: "" ## Enable persistence using Persistent Volume Claims ## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ ## master: persistence: enabled: true ## mariadb data Persistent Volume Storage Class ## If defined, storageClassName: ## If set to "-", storageClassName: "", which disables dynamic provisioning ## If undefined (the default) or set to null, no storageClassName spec is ## set, choosing the default provisioner. (gp2 on AWS, standard on ## GKE, AWS & OpenStack) ## storageClass: accessMode: ReadWriteOnce size: 8Gi ## Set path in case you want to use local host path volumes (not recommended in production) ## hostPath: ## Use an existing PVC ## existingClaim: ## Kubernetes configuration ## For minikube, set this to NodePort, elsewhere use LoadBalancer ## Use ClusterIP if your setup includes ingress controller ## service: type: LoadBalancer # HTTP Port port: 80 # HTTPS Port httpsPort: 443 ## ## nodePorts: ## http: ## https: ## nodePorts: http: "" https: "" ## Enable client source IP preservation ## ref http://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip ## externalTrafficPolicy: Cluster ## Configure the ingress resource that allows you to access the ## Drupal installation. Set up the URL ## ref: http://kubernetes.io/docs/user-guide/ingress/ ## ingress: ## Set to true to enable ingress record generation ## enabled: false ## Set this to true in order to add the corresponding annotations for cert-manager ## certManager: false ## When the ingress is enabled, a host pointing to this will be created ## hostname: drupal.local ## Ingress annotations done as key:value pairs ## For a full list of possible ingress annotations, please see ## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md ## ## If tls is set to true, annotation ingress.kubernetes.io/secure-backends: "true" will automatically be set ## If certManager is set to true, annotation kubernetes.io/tls-acme: "true" will automatically be set ## annotations: {} # kubernetes.io/ingress.class: nginx ## The list of additional hostnames to be covered with this ingress record. ## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array ## hosts: ## - name: drupal.local ## path: / ## hosts: ## The tls configuration for the ingress ## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls ## tls: ## - hosts: ## - drupal.local ## secretName: drupal.local-tls ## tls: secrets: ## If you're providing your own certificates, please use this to add the certificates as secrets ## key and certificate should start with -----BEGIN CERTIFICATE----- or ## -----BEGIN RSA PRIVATE KEY----- ## ## name should line up with a tlsSecret set further up ## If you're using cert-manager, this is unneeded, as it will create the secret for you if it is not set ## ## It is also possible to create and manage the certificates outside of this helm chart ## Please see README.md for more information # - name: drupal.local-tls # key: # certificate: ## Enable persistence using Persistent Volume Claims ## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ ## persistence: enabled: true ## drupal data Persistent Volume Storage Class ## If defined, storageClassName: ## If set to "-", storageClassName: "", which disables dynamic provisioning ## If undefined (the default) or set to null, no storageClassName spec is ## set, choosing the default provisioner. (gp2 on AWS, standard on ## GKE, AWS & OpenStack) ## storageClass: accessMode: ReadWriteOnce size: 8Gi ## A manually managed Persistent Volume Claim ## Requires persistence.enabled: true ## If defined, PVC must be created manually before volume will be bound ## existingClaim: ## If defined, the drupal-data volume will mount to the specified hostPath. ## Requires persistence.enabled: true ## Requires persistence.existingClaim: nil|false ## Default: nil. ## hostPath: ## Configure resource requests and limits ## ref: http://kubernetes.io/docs/user-guide/compute-resources/ ## resources: requests: memory: 512Mi cpu: 300m ## Configure Pods Security Context ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod ## podSecurityContext: enabled: true fsGroup: 1001 ## Configure Container Security Context (only main container) ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container ## containerSecurityContext: enabled: true runAsUser: 1001 ## Configure liveness and readiness probes. ## Drupal core exposes /user/login to unauthenticated requests, making it a good ## default liveness and readiness path. However, that may not always be the ## case. For example, if the image value is overridden to an image containing a ## module that alters that route, or an image that does not auto-install Drupal. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/ # livenessProbe: enabled: true initialDelaySeconds: 120 periodSeconds: 5 timeoutSeconds: 5 successThreshold: 1 failureThreshold: 5 readinessProbe: enabled: true initialDelaySeconds: 30 periodSeconds: 5 timeoutSeconds: 1 successThreshold: 1 failureThreshold: 5 customLivenessProbe: {} customReadinessProbe: {} ## lifecycleHooks for the container to automate configuration before or after startup. ## lifecycleHooks: ## Pod annotations ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ ## podAnnotations: {} ## Pod extra labels ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ ## podLabels: {} ## Affinity for pod assignment ## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity ## affinity: {} ## Node labels for pod assignment. Evaluated as a template. ## ref: https://kubernetes.io/docs/user-guide/node-selection/ ## nodeSelector: {} ## Prometheus Exporter / Metrics ## metrics: enabled: false image: registry: docker.io repository: bitnami/apache-exporter tag: 0.8.0-debian-10-r97 pullPolicy: IfNotPresent ## Optionally specify an array of imagePullSecrets. ## Secrets must be manually created in the namespace. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ ## pullSecrets: # - myRegistryKeySecretName ## Metrics exporter pod Annotation and Labels ## podAnnotations: prometheus.io/scrape: "true" prometheus.io/port: "9117" ## Metrics exporter resource requests and limits ## ref: http://kubernetes.io/docs/user-guide/compute-resources/ ## resources: {} ## Array with extra yaml to deploy with the chart. Evaluated as a template ## extraDeploy: []