-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.yml
81 lines (75 loc) · 2.63 KB
/
docker-compose.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
81
version: "3"
services:
media:
image: nginx:1.25.1-bookworm
restart: unless-stopped
volumes:
- /opt/p2-network/campjs-cfp/pretalx-data/media/:/usr/share/nginx/html/media
labels:
- "traefik.enable=true"
- "traefik.http.routers.campjs-cfp-media.rule=(Host(`cfp.campjs.org`) && PathPrefix(`/media`))"
- "traefik.http.routers.campjs-cfp-media.entrypoints=websecure"
- "traefik.http.routers.campjs-cfp-media.tls=true"
- "traefik.http.routers.campjs-cfp-media.tls.certresolver=campjs"
- "traefik.http.routers.campjs-cfp-media.tls.domains[0].main=cfp.campjs.org"
networks:
traefik:
pretalx:
image: ghcr.io/thepatrick/pretalx-docker:0168987
container_name: pretalx
restart: unless-stopped
depends_on:
- redis
- db
volumes:
- /opt/p2-network/campjs-cfp/cfg/pretalx.cfg:/etc/pretalx/pretalx.cfg:ro
- /opt/p2-network/campjs-cfp/pretalx-data/:/data
labels:
- "traefik.enable=true"
- "traefik.http.routers.campjs-cfp-pretalx.rule=Host(`cfp.campjs.org`)"
- "traefik.http.routers.campjs-cfp-pretalx.entrypoints=websecure"
- "traefik.http.routers.campjs-cfp-pretalx.tls=true"
- "traefik.http.routers.campjs-cfp-pretalx.tls.certresolver=campjs"
- "traefik.http.routers.campjs-cfp-pretalx.tls.domains[0].main=cfp.campjs.org"
- "traefik.http.routers.campjs-cfp-redir.entrypoints=web"
- "traefik.http.routers.campjs-cfp-redir.rule=Host(`cfp.campjs.org`)"
- "traefik.http.routers.campjs-cfp-redir.middlewares=redirect-to-https@docker"
- "traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https"
networks:
default:
traefik:
db:
image: mysql:latest
container_name: pretalx-db
restart: unless-stopped
volumes:
- "/opt/p2-network/pretalx-db/:/var/lib/mysql"
environment:
MYSQL_DATABASE: pretalx
MYSQL_USER: pretalx
MYSQL_ROOT_PASSWORD_FILE: /run/secrets/mysql_root_password
MYSQL_USER_PASSWORD_FILE: /run/secrets/mysql_user_password
command:
[
"mysqld",
"--character-set-server=utf8mb4",
"--collation-server=utf8mb4_unicode_ci",
]
secrets:
- mysql_user_password
- mysql_root_password
redis:
image: redis:7.0.12-bookworm
container_name: pretalx-redis
restart: unless-stopped
volumes:
- "/opt/p2-network/pretalx-redis/:/data"
networks:
traefik:
name: traefik_default
external: true
secrets:
mysql_root_password:
file: /opt/p2-network/run/DOCKER_CFP_MYSQL_ROOT_PASSWORD
mysql_user_password:
file: /opt/p2-network/run/DOCKER_CFP_MYSQL_USER_PASSWORD