Files
openccb/docker-compose.yml
T

97 lines
2.1 KiB
YAML

services:
db:
image: postgres:16-alpine
environment:
POSTGRES_USER: user
POSTGRES_PASSWORD: password
POSTGRES_DB: openccb
ports:
- "5432:5432"
volumes:
- postgres_data:/var/lib/postgresql/data
cms-service:
build:
context: .
dockerfile: services/cms-service/Dockerfile
environment:
DATABASE_URL: postgresql://user:password@db:5432/openccb_cms
JWT_SECRET: openccb_secret_key_2025_production
ports:
- "3001:3001"
volumes:
- uploads_data:/app/uploads
env_file: .env
depends_on:
- db
lms-service:
build:
context: .
dockerfile: services/lms-service/Dockerfile
environment:
DATABASE_URL: postgresql://user:password@db:5432/openccb_lms
JWT_SECRET: openccb_secret_key_2025_production
ports:
- "3002:3002"
env_file: .env
depends_on:
- db
studio:
build:
context: ./web/studio
dockerfile: Dockerfile
ports:
- "3000:3000"
environment:
NEXT_PUBLIC_CMS_API_URL: http://localhost:3001
experience:
build:
context: ./web/experience
dockerfile: Dockerfile
ports:
- "3003:3003"
environment:
NEXT_PUBLIC_LMS_API_URL: http://localhost:3002
whisper:
image: fedirz/faster-whisper-server:latest-cpu
ports:
- "8000:8000"
volumes:
- whisper_cache:/root/.cache/huggingface
environment:
# - WHISPER_MODEL=medium
# - DEVICE=cpu
# GPU support commented out for stability if drivers missing
- DEVICE=cpu
# GPU support for RTX 2070 Super
# deploy:
# resources:
# reservations:
# devices:
# - driver: nvidia
# count: 1
# capabilities: [ gpu ]
e2e:
build:
context: ./e2e
environment:
- STUDIO_URL=http://studio:3000
- EXPERIENCE_URL=http://experience:3003
depends_on:
- studio
- experience
volumes:
- ./e2e/tests:/e2e/tests
- ./e2e/playwright-report:/e2e/playwright-report
profiles: [ "test" ]
volumes:
postgres_data:
uploads_data:
whisper_cache: