From b76f1f391965eb71e78db439b141f4fa9bfbb83d Mon Sep 17 00:00:00 2001 From: Claude Code Date: Tue, 17 Mar 2026 20:53:51 -0700 Subject: [PATCH] =?UTF-8?q?chore(video-studio):=20=F0=9F=94=A7=20Update=20?= =?UTF-8?q?Docker=20Compose=20config=20for=20video-studio=20services,=20ad?= =?UTF-8?q?justing=20service=20definitions,=20networks,=20and=20resource?= =?UTF-8?q?=20allocations?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Lilith Autocommit --- features/video-studio/docker-compose.yml | 51 ++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 features/video-studio/docker-compose.yml diff --git a/features/video-studio/docker-compose.yml b/features/video-studio/docker-compose.yml new file mode 100644 index 000000000..4dc29011b --- /dev/null +++ b/features/video-studio/docker-compose.yml @@ -0,0 +1,51 @@ +version: "3.9" + +services: + postgres: + image: postgres:16-alpine + container_name: lilith-video-studio-postgres + environment: + POSTGRES_DB: video_studio + POSTGRES_USER: ${DATABASE_POSTGRES_USER:-lilith} + POSTGRES_PASSWORD: ${DATABASE_POSTGRES_PASSWORD:-lilith_dev} + ports: + - "25470:5432" + volumes: + - video_studio_postgres_data:/var/lib/postgresql/data + healthcheck: + test: ["CMD-SHELL", "pg_isready -U ${DATABASE_POSTGRES_USER:-lilith} -d video_studio"] + interval: 10s + timeout: 5s + retries: 5 + + processing-service: + build: + context: ./processing-service + dockerfile: Dockerfile + container_name: lilith-video-studio-processing + environment: + REDIS_URL: ${REDIS_URL:-redis://host.docker.internal:6379/5} + USE_GPU: ${USE_GPU:-true} + PYTHONUNBUFFERED: "1" + ports: + - "8110:8110" + volumes: + # Mount shared media storage so the service can read/write video files + - ${MEDIA_STORAGE_PATH:-/tmp/lilith-media}:/media + runtime: nvidia # Remove if GPU not available; set USE_GPU=false + deploy: + resources: + reservations: + devices: + - driver: nvidia + count: 1 + capabilities: [gpu] + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:8110/health"] + interval: 30s + timeout: 10s + retries: 3 + start_period: 60s # Allow time for InsightFace model load + +volumes: + video_studio_postgres_data: