-
Notifications
You must be signed in to change notification settings - Fork 29
/
Copy pathdocker-compose.yml
73 lines (73 loc) · 2.5 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
services:
ganymede:
container_name: ganymede
image: ghcr.io/zibbp/ganymede:latest
restart: unless-stopped
depends_on:
- ganymede-db
environment:
- DEBUG=false
- TZ=America/Chicago # Set to your timezone
# Data paths in container; update the mounted volume paths as well
- VIDEOS_DIR=/data/videos
- TEMP_DIR=/data/temp
- LOGS_DIR=/data/logs
- CONFIG_DIR=/data/config
# Database settings
- DB_HOST=ganymede-db
- DB_PORT=5432
- DB_USER=ganymede
- DB_PASS=PASSWORD
- DB_NAME=ganymede-prd
- DB_SSL=disable
# - DB_SSL_ROOT_CERT= # path to cert in the container if DB_SSL is not disabled
- TWITCH_CLIENT_ID= # from your twitch application
- TWITCH_CLIENT_SECRET= # from your twitch application
# Worker settings. Max number of tasks to run in parallel per type.
- MAX_CHAT_DOWNLOAD_EXECUTIONS=3
- MAX_CHAT_RENDER_EXECUTIONS=2
- MAX_VIDEO_DOWNLOAD_EXECUTIONS=2
- MAX_VIDEO_CONVERT_EXECUTIONS=3
- MAX_VIDEO_SPRITE_THUMBNAIL_EXECUTIONS=2
# Optional OAuth settings
# - OAUTH_ENABLED=false
# - OAUTH_PROVIDER_URL=
# - OAUTH_CLIENT_ID=
# - OAUTH_CLIENT_SECRET=
# - OAUTH_REDIRECT_URL=http://IP:PORT/api/v1/auth/oauth/callback # Points to the API service
# Optional Frontend settings
- SHOW_SSO_LOGIN_BUTTON=true
- FORCE_SSO_AUTH=false
- REQUIRE_LOGIN=false
# - CDN_URL= # Set this if you are hosting static files through another service (nginx, S3, etc). By default this does not need to be configured as Ganymede serves the static files.
volumes:
- /path/to/vod/storage:/data/videos # update VIDEOS_DIR env var
- ./temp:/data/temp # update TEMP_DIR env var
- ./logs:/data/logs # queue logs
- ./config:/data/config # config and other miscellaneous files
ports:
- 4800:4000
healthcheck:
test: curl --fail http://localhost:4000/health || exit 1
interval: 60s
retries: 5
start_period: 60s
timeout: 10s
ganymede-db:
container_name: ganymede-db
image: postgres:14
volumes:
- ./ganymede-db:/var/lib/postgresql/data
environment:
- POSTGRES_PASSWORD=PASSWORD
- POSTGRES_USER=ganymede
- POSTGRES_DB=ganymede-prd
ports:
- 4801:5432
restart: unless-stopped
healthcheck:
test: ["CMD-SHELL", "pg_isready", "-d", "{{ ganymede_db_name }}"]
interval: 30s
timeout: 60s
retries: 5
start_period: 60s