-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
83 lines (79 loc) · 2.04 KB
/
Copy pathdocker-compose.yml
File metadata and controls
83 lines (79 loc) · 2.04 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
services:
proxy:
image: caddy:2.9.0-beta.3-alpine
restart: unless-stopped
cap_add:
- NET_ADMIN
ports:
- "80:80"
- "443:443"
- "443:443/udp"
environment:
HOST_ADDRESS: "${HOST_ADDRESS}"
networks:
- frontend
volumes:
- $PWD/caddy/Caddyfile:/etc/caddy/Caddyfile
- $PWD/caddy/data:/data
- $PWD/caddy/config:/config
appserver:
image: ilkkahanninen/partyboi:latest
restart: unless-stopped
ports:
- "${PORT:-8123}:8123"
environment:
INSTANCE_ID: "${INSTANCE_ID}"
INSTANCE_NAME: "${INSTANCE_NAME}"
HOST_ADDRESS: "${HOST_ADDRESS}"
SESSION_SIGN_KEY: "${SESSION_SIGN_KEY}"
ADMIN_USERNAME: "${ADMIN_USERNAME}"
ADMIN_PASSWORD: "${ADMIN_PASSWORD}"
DB_PASSWORD: "${DB_PASSWORD}"
DB_USER: postgres
DB_DATABASE: partyboi
DB_HOST: db
DB_PORT: "${DB_PORT}"
volumes:
- "${FILES_ASSETS}:/assets"
- "${FILES_ENTRIES}:/entries"
- "${FILES_SCREENSHOTS}:/screenshots"
networks:
- frontend
- backend
depends_on:
db:
condition: service_healthy
healthcheck:
test: [ "CMD", "curl", "-f", "-m", "5", "http://localhost:8123/health" ]
interval: 10s
timeout: 2s
retries: 3
db:
image: postgres:18
restart: unless-stopped
volumes:
- "${DIR_DB}:/var/lib/postgresql/data"
environment:
POSTGRES_PASSWORD: "${DB_PASSWORD}"
POSTGRES_USER: "${DB_USER}"
POSTGRES_DB: "${DB_DATABASE}"
ports:
- "${DB_PORT:-5432}:5432"
networks:
- backend
healthcheck:
test: [ "CMD-SHELL", "pg_isready -U postgres" ]
interval: 1s
autoheal:
image: docker:cli
network_mode: none
cap_drop:
- ALL
volumes: [ "/var/run/docker.sock:/var/run/docker.sock" ]
command: [ "/bin/sh", "-c", "while true; do sleep 15; docker ps -q -f health=unhealthy | xargs --no-run-if-empty docker restart; done" ]
restart: unless-stopped
networks:
frontend:
name: frontend
backend:
name: backend