# Example Docker Compose — uses a named volume so data persists across rebuilds # without needing a specific host path. Copy to docker-compose.yml and customise. services: whisperx-base: build: context: ./backend target: whisperx-base image: nat20-whisperx-base:latest restart: "no" backend: build: context: ./backend target: runtime image: nat20-backend:latest restart: unless-stopped depends_on: - whisperx-base environment: # Skip setup wizard on container restart (or "false" to force re-run) NAT20_ONBOARDING_COMPLETED: "true" volumes: - app_data:/data - hf_cache:/root/.cache/huggingface - torch_cache:/root/.cache/torch deploy: resources: reservations: devices: - driver: nvidia count: 1 capabilities: [gpu] ports: - "8000:8000" frontend: build: ./frontend restart: unless-stopped depends_on: - backend ports: - "8020:8020" volumes: app_data: hf_cache: torch_cache: