services/swarm/lldap.yaml
traveler 3c8190d18b
Some checks are pending
Deploy on push / detect (push) Waiting to run
Deploy on push / deploy_swarm (push) Blocked by required conditions
Deploy on push / deploy_compose (push) Blocked by required conditions
;'
2026-04-30 13:54:47 -05:00

116 lines
2.9 KiB
YAML

networks:
netgrimoire:
external: true
services:
lldap-db:
image: postgres:16
networks:
- netgrimoire
#user: "1001:998"
environment:
TZ: America/Chicago
PUID: "1964"
PGID: "1964"
POSTGRES_DB: lldap
POSTGRES_USER: lldap
POSTGRES_PASSWORD: F@lcon13
volumes:
- /DockerVol/lldap-db/data:/var/lib/postgresql/data
deploy:
restart_policy:
condition: any
delay: 5s
max_attempts: 3
window: 120s
placement:
constraints:
- node.platform.arch != arm
- node.platform.arch != aarch64
- node.hostname == docker4
labels:
gremlin.version: "2026-04-1"
diun.enable: true
gremlin.caddy.skip: "true"
gremlin.homepage.skip: "true"
gremlin.monitor.skip: "true"
gremlin.network.skip: "true"
restart: unless-stopped
lldap:
image: lldap/lldap:stable
networks:
- netgrimoire
#user: "1001:998"
environment:
TZ: America/Chicago
PUID: "1964"
PGID: "1964"
# Base DN
LLDAP_LDAP_BASE_DN: "dc=netgrimoire,dc=com"
LLDAP_DOMAIN: netgrimoire.com
# User/admin bind password (you will replace)
LLDAP_LDAP_USER_PASS: F@lcon13
# Generated secrets (leave as-is unless you want to rotate)
LLDAP_JWT_SECRET: lougu9MjGLmLp1SPDkkCBsQm-MdHpGGuOn-wW7FRWRdzglIn1nJRyBQkQ7HDcDh0
LLDAP_KEY_SEED: Kss_fNlMBH3XRo9aYHo_pI9gWQecQ1v3-yYzULckoWUm-iKIkV2DMygPYyKaN-u_
# Postgres
LLDAP_DATABASE_URL: postgres://lldap:F@lcon13@lldap-db:5432/lldap
volumes:
- /DockerVol/lldap/data:/data
# Expose to LAN via swarm routing mesh (ingress)
ports:
- target: 17170
published: 17170
protocol: tcp
mode: ingress
- target: 3890
published: 3890
protocol: tcp
mode: ingress
# If/when you enable LDAPS:
# - target: 6360
# published: 6360
# protocol: tcp
# mode: ingress
deploy:
restart_policy:
condition: any
delay: 5s
max_attempts: 3
window: 120s
placement:
constraints:
- node.platform.arch != arm
- node.platform.arch != aarch64
- node.hostname == docker4
labels:
diun.enable: "true"
# Homepage
- homepage.group=Authentication
- homepage.name=LLDAP
- homepage.icon=ldap.png
- homepage.href=https://ldap.netgrimoire.com
- homepage.description=Lightweight LDAP directory
# Kuma
- kuma.lldap.http.name=LLDAP
- kuma.lldap.http.url=http://lldap:17170
# Caddy / Authentik (protect UI)
- caddy=ldap.netgrimoire.com
- caddy.import=authentik
- caddy.reverse_proxy=lldap:17170
# Diun
- diun.enable=true
restart: unless-stopped