-
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
83 lines (78 loc) · 2.97 KB
/
Copy pathdocker-compose.yml
File metadata and controls
83 lines (78 loc) · 2.97 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:
postgres:
image: ${NEBULYNK_POSTGRES_IMAGE:-postgres:17-alpine3.24@sha256:742f40ea20b9ff2ff31db5458d127452988a2164df9e17441e191f3b72252193}
container_name: nebulynk-postgres
restart: unless-stopped
ports:
- "127.0.0.1:${POSTGRES_PORT:-5433}:5432"
environment:
POSTGRES_DB: ${POSTGRES_DB:-nebulynk}
POSTGRES_USER: ${POSTGRES_USER:-nebulynk}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-nebulynk_dev_password}
volumes:
- postgres_data:/var/lib/postgresql/data
redis:
image: ${NEBULYNK_REDIS_IMAGE:-redis:7.4.7-alpine3.21}
container_name: nebulynk-redis
restart: unless-stopped
ports:
- "127.0.0.1:${REDIS_PORT:-6379}:6379"
volumes:
- redis_data:/data
garage:
image: ${NEBULYNK_GARAGE_IMAGE:-dxflrs/garage:v2.3.0}
container_name: nebulynk-garage
restart: unless-stopped
ports:
- "127.0.0.1:${STORAGE_S3_PORT:-3900}:3900"
environment:
GARAGE_RPC_SECRET: ${GARAGE_RPC_SECRET:?GARAGE_RPC_SECRET must be set for Garage}
GARAGE_DEFAULT_ACCESS_KEY: ${STORAGE_S3_ACCESS_KEY:-nebulynk}
GARAGE_DEFAULT_SECRET_KEY: ${STORAGE_S3_SECRET_KEY:-nebulynk_dev_password}
GARAGE_DEFAULT_BUCKET: ${STORAGE_S3_BUCKET:-nebulynk-files}
command: /garage server --single-node --default-bucket
volumes:
- ./garage.toml:/etc/garage.toml:ro
- garage_meta:/var/lib/garage/meta
- garage_data:/var/lib/garage/data
livekit:
image: ${NEBULYNK_LIVEKIT_SERVER_IMAGE:-livekit/livekit-server:v1.13.4}
container_name: nebulynk-livekit
restart: unless-stopped
depends_on:
- redis
ports:
- "127.0.0.1:${LIVEKIT_PORT:-7880}:7880"
- "7881:7881"
- "7882:7882/udp"
environment:
LIVEKIT_KEYS: "${LIVEKIT_API_KEY:-qccdazotxntstqizhlqgkcdflfpkndao}: ${LIVEKIT_API_SECRET:-qccdazotxntstqizhlqgkcdflfpkndao}"
command: --config /etc/livekit.yaml
volumes:
- ./livekit.yaml:/etc/livekit.yaml:ro
livekit-egress:
image: ${NEBULYNK_LIVEKIT_EGRESS_IMAGE:-livekit/egress:v1.13.0}
container_name: nebulynk-livekit-egress
restart: unless-stopped
command: --config /etc/livekit-egress.yaml
depends_on:
- livekit
- redis
- garage
environment:
EGRESS_CONFIG_FILE: /etc/livekit-egress.yaml
# Keep these as the single source of truth. Do not duplicate LiveKit
# credentials or ws_url inside livekit-egress.yaml.
LIVEKIT_API_KEY: ${LIVEKIT_API_KEY:-qccdazotxntstqizhlqgkcdflfpkndao}
LIVEKIT_API_SECRET: ${LIVEKIT_API_SECRET:-qccdazotxntstqizhlqgkcdflfpkndao}
LIVEKIT_WS_URL: ${LIVEKIT_WS_URL:-ws://livekit:7880}
AWS_ACCESS_KEY_ID: ${STORAGE_S3_ACCESS_KEY:-nebulynk}
AWS_SECRET_ACCESS_KEY: ${STORAGE_S3_SECRET_KEY:-nebulynk_dev_password}
AWS_DEFAULT_REGION: ${STORAGE_S3_REGION:-${MEETING_RECORDINGS_S3_REGION:-us-east-1}}
volumes:
- ./livekit-egress.yaml:/etc/livekit-egress.yaml:ro
volumes:
postgres_data:
redis_data:
garage_meta:
garage_data: