---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: ldap
  namespace: authelia
  labels:
    app: ldap
spec:
  replicas: 1
  selector:
    matchLabels:
      app: ldap
  template:
    metadata:
      labels:
        app: ldap
    spec:
      containers:
        - name: ldap
          image: osixia/openldap:1.5.0
          ports:
            - containerPort: 389
            - containerPort: 636
          args: ["--copy-service", "--loglevel", "debug"]
          env:
            - name: LDAP_ORGANISATION
              value: MyCompany
            - name: LDAP_DOMAIN
              value: example.com
            - name: LDAP_ADMIN_PASSWORD
              value: password
            - name: LDAP_CONFIG_PASSWORD
              value: password
            - name: LDAP_ADDITIONAL_MODULES
              value: memberof
            - name: LDAP_ADDITIONAL_SCHEMAS
              value: openldap
            - name: LDAP_FORCE_RECONFIGURE
              value: "true"
            - name: LDAP_TLS_VERIFY_CLIENT
              value: try
          volumeMounts:
            - name: ldap-config
              mountPath: /container/service/slapd/assets/config/bootstrap/ldif/custom
      volumes:
        - name: ldap-config
          hostPath:
            path: /configmaps/ldap
            type: Directory
...
---
apiVersion: v1
kind: Service
metadata:
  name: ldap-service
  namespace: authelia
spec:
  selector:
    app: ldap
  ports:
    - protocol: TCP
      port: 636
...
