69 lines
1.9 KiB
YAML
69 lines
1.9 KiB
YAML
services:
|
|
db:
|
|
image: postgres:15-alpine
|
|
container_name: vortex-db
|
|
restart: always
|
|
environment:
|
|
POSTGRES_USER: ${POSTGRES_USER:-vortex}
|
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-vortex_pass}
|
|
POSTGRES_DB: ${POSTGRES_DB:-vortex_db}
|
|
volumes:
|
|
- postgres_data:/var/lib/postgresql/data
|
|
ports:
|
|
- "5432:5432"
|
|
|
|
server:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile.server
|
|
container_name: vortex-server
|
|
restart: always
|
|
environment:
|
|
DATABASE_URL: ${DATABASE_URL:-postgresql://${POSTGRES_USER:-vortex}:${POSTGRES_PASSWORD:-vortex_pass}@db:5432/${POSTGRES_DB:-vortex_db}}
|
|
PORT: 3001
|
|
JWT_SECRET: ${JWT_SECRET:-your-secure-random-secret-key-here}
|
|
CORS_ORIGINS: ${CORS_ORIGINS:-http://localhost,http://localhost:80,http://localhost:9090,http://localhost:5173}
|
|
ENCRYPTION_KEY: ${ENCRYPTION_KEY:-0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef}
|
|
TURN_URL: ${TURN_URL:-turn:${DOMAIN:-mess.khomegeneric.keenetic.pro}:3478}
|
|
TURN_SECRET: ${TURN_SECRET:-dcf1c1827c0c520d45130e282ea26991}
|
|
depends_on:
|
|
- db
|
|
ports:
|
|
- "3001:3001"
|
|
volumes:
|
|
- ./apps/server/uploads:/app/apps/server/uploads
|
|
|
|
web:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile.web
|
|
container_name: vortex-web
|
|
restart: always
|
|
ports:
|
|
- "9090:80"
|
|
depends_on:
|
|
- server
|
|
|
|
turn:
|
|
image: coturn/coturn
|
|
container_name: vortex-turn
|
|
restart: always
|
|
ports:
|
|
- "3478:3478"
|
|
- "3478:3478/udp"
|
|
- "49152-49170:49152-49170/udp"
|
|
environment:
|
|
- DETECT_EXTERNAL_IP=yes
|
|
command:
|
|
- -n
|
|
- --log-file=stdout
|
|
- --min-port=49152
|
|
- --max-port=49170
|
|
- --realm=${DOMAIN:-mess.khomegeneric.keenetic.pro}
|
|
- --static-auth-secret=${TURN_SECRET:-dcf1c1827c0c520d45130e282ea26991}
|
|
- --no-tls
|
|
- --no-dtls
|
|
|
|
volumes:
|
|
postgres_data:
|