Files
VoxCPM/docker/docker-compose.yml
Daniel Cox 4af38a9ddc fix: replace FORWARDED_ALLOW_IPS with nginx map, add .dockerignore
HTTPS proxy handling moved entirely to nginx (map $http_x_forwarded_proto).

- .dockerignore to exclude models/data/lora/output from build context
- nginx: manifest.json returns proper JSON for PWA, favicon returns 204
- docker-compose: drop version key, remove FORWARDED_ALLOW_IPS env var
- README: update HTTPS troubleshooting (nginx map handles it now)
2026-08-12 11:57:37 +09:30

45 lines
1.3 KiB
YAML

services:
training-webui:
build:
context: ..
dockerfile: docker/Dockerfile
ports:
- "7860:7860"
volumes:
# Pretrained model weights + HF cache (HF_HOME=/app/models in Dockerfile).
# Pre-populate with model dirs, or leave empty — auto-downloads on first run.
- ../models:/app/models
# Training data: JSONL manifests and audio files.
# Reference paths inside the container as /app/data/train.jsonl etc.
- ../data:/app/data
# LoRA training output — checkpoints, configs, logs.
# Results appear in lora/<run-name>/checkpoints/ after training.
- ../lora:/app/lora
# Additional training artifacts.
- ../output:/app/output
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities: [gpu]
environment:
- GRADIO_SERVER_PORT=7860
- GRADIO_ROOT_PATH=/webui # Matches nginx location block
# - VOXCPM_LANG=en # Uncomment for English UI (default: zh)
restart: unless-stopped
nginx:
image: nginx:alpine
ports:
- "80:80"
volumes:
- ./nginx.conf:/etc/nginx/conf.d/default.conf:ro
depends_on:
- training-webui
restart: unless-stopped