-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
41 lines (40 loc) · 1.58 KB
/
docker-compose.yml
File metadata and controls
41 lines (40 loc) · 1.58 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
# Payambar Docker Compose Configuration
services:
payambar:
image: ghcr.io/4xmen/payambar:latest
# build:
# context: .
# dockerfile: Dockerfile
container_name: payambar
network_mode: "host" # Recommended for TURN relay UDP port range exposure
# Note: When using host mode, ports are not mapped - the app listens directly on host ports
environment:
PORT: "${PORT:-8080}"
ENVIRONMENT: "production"
DATABASE_PATH: "/data/payambar.db"
JWT_SECRET: "${JWT_SECRET:-your-secret-key-change-this}"
FILE_STORAGE_PATH: "/data/uploads"
CORS_ORIGINS: "${CORS_ORIGINS:-*}"
TURN_ENABLED: "${TURN_ENABLED:-false}"
TURN_EXTERNAL_IP: "${TURN_EXTERNAL_IP:-}"
TURN_ADVERTISED_HOST: "${TURN_ADVERTISED_HOST:-}"
TURN_REALM: "${TURN_REALM:-}"
TURN_LISTEN_ADDRESS: "${TURN_LISTEN_ADDRESS:-0.0.0.0}"
TURN_LISTEN_PORT: "${TURN_LISTEN_PORT:-3478}"
TURN_RELAY_ADDRESS: "${TURN_RELAY_ADDRESS:-0.0.0.0}"
TURN_RELAY_MIN_PORT: "${TURN_RELAY_MIN_PORT:-49152}"
TURN_RELAY_MAX_PORT: "${TURN_RELAY_MAX_PORT:-49252}"
TURN_USERNAME: "${TURN_USERNAME:-}"
TURN_PASSWORD: "${TURN_PASSWORD:-}"
# For WebRTC config API (optional explicit override)
STUN_SERVERS: "${STUN_SERVERS:-stun:stun.l.google.com:19302}"
TURN_SERVER: "${TURN_SERVER:-}"
volumes:
- ./data:/data
restart: unless-stopped
healthcheck:
test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://localhost:${PORT:-8080}/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s