forked from androidseb25/iGotify-Notification-Assistent
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yaml
More file actions
108 lines (104 loc) · 3.74 KB
/
docker-compose.yaml
File metadata and controls
108 lines (104 loc) · 3.74 KB
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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
# iGotify Notification Assistant - Docker Compose
#
# Quick Start:
# 1. Copy .env.example to .env and configure
# 2. Run: docker compose up -d
#
# Documentation: https://github.com/androidseb25/iGotify-Notification-Assistent/wiki
services:
gotify:
container_name: gotify
hostname: gotify
image: gotify/server
# image: gotify/server-arm7 # For ARM v7
# image: gotify/server-arm64 # For ARM64
restart: unless-stopped
security_opt:
- no-new-privileges:true
networks:
- net
# - proxy # Uncomment for Traefik
ports:
- "8680:80"
volumes:
- data:/app/data
environment:
GOTIFY_DEFAULTUSER_PASS: ${GOTIFY_DEFAULTUSER_PASS:?Please set GOTIFY_DEFAULTUSER_PASS in .env}
# GOTIFY_REGISTRATION: 'false' # Disable user registration
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80/health"]
interval: 5s
timeout: 3s
retries: 5
start_period: 10s
# ─── Traefik Labels (uncomment to enable) ───────────────────────
# labels:
# traefik.enable: "true"
# traefik.docker.network: proxy
# # HTTPS
# traefik.http.routers.gotify-secure.entrypoints: websecure
# traefik.http.routers.gotify-secure.rule: Host(`gotify.example.com`)
# traefik.http.routers.gotify-secure.tls: "true"
# traefik.http.routers.gotify-secure.tls.certresolver: http_resolver
# traefik.http.routers.gotify-secure.service: gotify
# traefik.http.routers.gotify-secure.middlewares: default@file
# # HTTP (redirect to HTTPS)
# traefik.http.routers.gotify.entrypoints: web
# traefik.http.routers.gotify.rule: Host(`gotify.example.com`)
# # Service
# traefik.http.services.gotify.loadbalancer.server.port: "80"
igotify:
container_name: igotify
hostname: igotify
image: ghcr.io/androidseb25/igotify-notification-assist:latest
restart: unless-stopped
security_opt:
- no-new-privileges:true
depends_on:
gotify:
condition: service_healthy
networks:
- net
# - proxy # Uncomment for Traefik
ports:
- "8681:8080"
volumes:
- api-data:/app/data
environment:
# Required only when NOT using a public domain
# See wiki for details: https://github.com/androidseb25/iGotify-Notification-Assistent/wiki#environment-variables
GOTIFY_URLS: ${GOTIFY_URLS:-}
GOTIFY_CLIENT_TOKENS: ${GOTIFY_CLIENT_TOKENS:-}
SECNTFY_TOKENS: ${SECNTFY_TOKENS:-}
# Optional settings
ENABLE_CONSOLE_LOG: ${ENABLE_CONSOLE_LOG:-'true'}
ENABLE_SCALAR_UI: ${ENABLE_SCALAR_UI:-'true'}
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080/Version"]
interval: 5s
timeout: 3s
retries: 5
start_period: 10s
# ─── Traefik Labels (uncomment to enable) ───────────────────────
# labels:
# traefik.enable: "true"
# traefik.docker.network: proxy
# # HTTPS
# traefik.http.routers.igotify-secure.entrypoints: websecure
# traefik.http.routers.igotify-secure.rule: Host(`igotify.example.com`)
# traefik.http.routers.igotify-secure.tls: "true"
# traefik.http.routers.igotify-secure.tls.certresolver: http_resolver
# traefik.http.routers.igotify-secure.service: igotify
# traefik.http.routers.igotify-secure.middlewares: default@file
# # HTTP (redirect to HTTPS)
# traefik.http.routers.igotify.entrypoints: web
# traefik.http.routers.igotify.rule: Host(`igotify.example.com`)
# # Service
# traefik.http.services.igotify.loadbalancer.server.port: "8080"
networks:
net:
# proxy:
# external: true
volumes:
data:
api-data: