-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathdocker-compose-nginx-lldap.yml
80 lines (75 loc) · 1.89 KB
/
docker-compose-nginx-lldap.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
services:
nginx:
container_name: nginx
image: lscr.io/linuxserver/nginx
restart: unless-stopped
networks:
- nginx
ports:
- 80:80
- 443:443
volumes:
- ./nginx/site-confs-lldap:/config/nginx/site-confs
- ./nginx/snippets:/config/nginx/snippets
- ./nginx/certs:/config/ssl # see nginx/README.md to generate self signed certs in this directory
environment:
TZ: 'UTC'
DOCKER_MODS: 'linuxserver/mods:nginx-proxy-confs'
authelia:
container_name: authelia
image: authelia/authelia:4.38.17
restart: unless-stopped
networks:
- nginx
ports:
- 9091
volumes:
- ./authelia-nginx-lldap:/config
depends_on:
- redis
environment:
- AUTHELIA_SESSION_DOMAIN=pygeoapi.local
- AUTHELIA_AUTHENTICATION_BACKEND_LDAP_PASSWORD=super_strong_ldap_password
- AUTHELIA_AUTHENTICATION_BACKEND_LDAP_BASE_DN=dc=pygeoapi,dc=local
redis:
container_name: redis
image: redis:7.0
restart: unless-stopped
networks:
- nginx
pygeoapi:
container_name: pygeoapi
build:
context: .
dockerfile: Dockerfile.pygeoapi
restart: unless-stopped
volumes:
- ./pygeoapi-config.yml:/pygeoapi/local.config.yml
- ./authelia-nginx-lldap:/pygeoapi/authelia-config
environment:
- SCRIPT_NAME=/api
depends_on:
- redis
- nginx
- authelia
networks:
- nginx
lldap:
container_name: lldap
image: lldap/lldap:stable
restart: unless-stopped
networks:
- nginx
expose:
- 3890 # LDAP service
- 17170 # Web service
volumes:
- ./lldap/config:/data:rw
environment:
- LLDAP_JWT_SECRET=REPLACE_WITH_RANDOM
- LLDAP_KEY_SEED=REPLACE_WITH_RANDOM
- LLDAP_LDAP_BASE_DN=dc=pygeoapi,dc=local
- LLDAP_LDAP_USER_PASS="super_strong_ldap_password"
networks:
nginx:
name: nginx