-
Notifications
You must be signed in to change notification settings - Fork 0
/
traefik.docker-compose.yml
73 lines (70 loc) · 2.34 KB
/
traefik.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
version: "3.3"
networks:
public:
external:
name: ${TRAEFIK_PUBLIC_NETWORK}
services:
ntfy:
image: binwiederhier/ntfy
container_name: ntfy
command:
- serve
environment:
- TZ=${TIMEZONE:-America/New_York}
- NTFY_BASE_URL=https://${NTFY_URL}
- NTFY_BEHIND_PROXY=true
- NTFY_LISTEN_HTTP=:8080
- NTFY_CACHE_FILE=/var/cache/ntfy/cache.db
- NTFY_CACHE_DURATION=${CACHE_DURATION:-72h}
- NTFY_ATTACHMENT_CACHE_DIR=/var/cache/ntfy/attachments
- NTFY_ATTACHMENT_EXPIRY_DURATION=${CACHE_DURATION:-72h}
- NTFY_AUTH_FILE=/var/cache/ntfy/auth.db
- NTFY_AUTH_DEFAULT_ACCESS=deny-all
- NTFY_ENABLE_LOGIN=true
- NTFY_ENABLE_SIGNUP=false
- NTFY_ENABLE_RESERVATIONS=true
user: ${PUID:-1000}:${PGID:-1000}
volumes:
- ${CONFIG_DIR}/ntfy/cache:/var/cache/ntfy
- ${CONFIG_DIR}/ntfy/etc:/etc/ntfy
ports:
- 8080:8080
healthcheck:
test:
[
"CMD-SHELL",
"wget -q --tries=1 http://${HOST}:8080/v1/health -O - | grep -Eo '\"healthy\"\\s*:\\s*true' || exit 1",
]
interval: 60s
timeout: 10s
retries: 3
start_period: 40s
networks:
- public
labels:
- "traefik.enable=true"
- "traefik.http.routers.ntfy.rule=Host(`${NTFY_URL}`)"
- "traefik.http.routers.ntfy.entrypoints=websecure"
- "traefik.http.routers.ntfy.tls.certresolver=tlsresolver"
- "traefik.http.routers.ntfy.middlewares=authelia@docker"
- "traefik.http.services.ntfy.loadbalancer.server.port=8080"
- "com.centurylinklabs.watchtower.enable=true"
restart: unless-stopped
ntfy-workbench:
container_name: ntfy-workbench
image: ghcr.io/mzrimsek/ntfy-workbench:latest
volumes:
- ${CONFIG_DIR}/ntfy-workbench/config:/app/config
networks:
- public
labels:
- "traefik.enable=true"
- "traefik.http.routers.ntfy-workbench.rule=Host(`${WORKBENCH_URL}`)"
- "traefik.http.routers.ntfy-workbench.entrypoints=websecure"
- "traefik.http.routers.ntfy-workbench.tls.certresolver=tlsresolver"
- "traefik.http.routers.ntfy-workbench.middlewares=authelia@docker"
- "traefik.http.services.ntfy-workbench.loadbalancer.server.port=3000"
- "com.centurylinklabs.watchtower.enable=true"
depends_on:
- ntfy
restart: unless-stopped