---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: authelia
  namespace: authelia
  labels:
    app: authelia
spec:
  replicas: 1
  selector:
    matchLabels:
      app: authelia
  template:
    metadata:
      labels:
        app: authelia
    spec:
      containers:
        - name: authelia
          image: authelia:dist
          ports:
            - containerPort: 80
          volumeMounts:
            - name: config-volume
              mountPath: /etc/authelia
          env:
            # We set secrets directly here for ease of deployment but all secrets
            # should be stored in the Kube Vault in production.
            - name: AUTHELIA_JWT_SECRET
              value: an_unsecure_secret
            - name: AUTHELIA_AUTHENTICATION_BACKEND_LDAP_PASSWORD
              value: password
            - name: AUTHELIA_SESSION_SECRET
              value: unsecure_password
            - name: AUTHELIA_STORAGE_MYSQL_PASSWORD
              value: password
      volumes:
        - name: config-volume
          configMap:
            name: authelia-config
            items:
              - key: configuration.yml
                path: configuration.yml
