2026-06-17 08:33:47 +02:00
|
|
|
services:
|
|
|
|
|
qwen3-tts:
|
|
|
|
|
image: vllm/vllm-omni:latest-aarch64
|
|
|
|
|
container_name: qwen3-tts
|
|
|
|
|
runtime: nvidia
|
|
|
|
|
environment:
|
|
|
|
|
- NVIDIA_VISIBLE_DEVICES=all
|
|
|
|
|
- NVIDIA_DRIVER_CAPABILITIES=compute,utility
|
|
|
|
|
- VLLM_LOGGING_LEVEL=INFO
|
|
|
|
|
- HF_HOME=/root/.cache/huggingface
|
2026-06-18 17:27:42 +02:00
|
|
|
# Modelle liegen vollstaendig im Cache → keine Online-Checks gegen huggingface.co.
|
|
|
|
|
# Verhindert Crash "[Errno -3] Temporary failure in name resolution" bei DNS-Ausfall.
|
|
|
|
|
- HF_HUB_OFFLINE=1
|
|
|
|
|
- TRANSFORMERS_OFFLINE=1
|
|
|
|
|
# Keine Lead-in-Stille (war nur Mitigation; Anfangsstottern ist client-seitig).
|
|
|
|
|
# Trailing-Stille bleibt per Default (300ms) gegen abruptes Ende.
|
|
|
|
|
- QWEN3_TTS_LEADIN_SILENCE_MS=0
|
|
|
|
|
- QWEN3_TTS_MODEL=${QWEN3_TTS_MODEL:-Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice}
|
2026-06-17 08:33:47 +02:00
|
|
|
ports:
|
|
|
|
|
- "8091:8091"
|
2026-06-18 17:27:42 +02:00
|
|
|
- "8092:8092"
|
|
|
|
|
- "8094:8094"
|
2026-06-17 08:33:47 +02:00
|
|
|
volumes:
|
|
|
|
|
- /home/guru/vllm/data/root:/root
|
|
|
|
|
- ./deploy/qwen3_tts.yaml:/deploy/qwen3_tts.yaml:ro
|
2026-06-19 17:22:28 +02:00
|
|
|
- ./docker/entrypoint.sh:/entrypoint.sh:ro
|
|
|
|
|
- ./docker/voice_clone_ui.py:/voice_clone_ui.py:ro
|
|
|
|
|
- ./docker/ws_log_proxy.py:/ws_log_proxy.py:ro
|
|
|
|
|
- ./docker/patch_qwen3_tts_runtime.py:/patch_qwen3_tts_runtime.py:ro
|
2026-06-18 17:27:42 +02:00
|
|
|
- ./ui:/ui:ro
|
2026-06-17 08:33:47 +02:00
|
|
|
command: ["/bin/bash", "/entrypoint.sh"]
|
|
|
|
|
restart: unless-stopped
|
|
|
|
|
healthcheck:
|
|
|
|
|
test: ["CMD", "curl", "-sf", "http://localhost:8091/health"]
|
|
|
|
|
interval: 30s
|
|
|
|
|
timeout: 10s
|
|
|
|
|
retries: 5
|
|
|
|
|
start_period: 120s
|
2026-06-18 17:27:42 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
qwen3-tts-clone:
|
|
|
|
|
image: vllm/vllm-omni:latest-aarch64
|
|
|
|
|
container_name: qwen3-tts-clone
|
|
|
|
|
runtime: nvidia
|
|
|
|
|
profiles:
|
|
|
|
|
- clone
|
|
|
|
|
environment:
|
|
|
|
|
- NVIDIA_VISIBLE_DEVICES=all
|
|
|
|
|
- NVIDIA_DRIVER_CAPABILITIES=compute,utility
|
|
|
|
|
- VLLM_LOGGING_LEVEL=INFO
|
|
|
|
|
- HF_HOME=/root/.cache/huggingface
|
|
|
|
|
- HF_HUB_OFFLINE=1
|
|
|
|
|
- TRANSFORMERS_OFFLINE=1
|
|
|
|
|
- QWEN3_TTS_CLONE_MODEL=${QWEN3_TTS_CLONE_MODEL:-}
|
2026-06-19 15:52:58 +02:00
|
|
|
- QWEN3_TTS_CLONE_PORT=8091
|
2026-06-18 17:27:42 +02:00
|
|
|
ports:
|
2026-06-19 15:52:58 +02:00
|
|
|
- "8091:8091"
|
2026-06-18 17:27:42 +02:00
|
|
|
volumes:
|
|
|
|
|
- /home/guru/vllm/data/root:/root
|
|
|
|
|
- ./deploy/qwen3_tts.yaml:/deploy/qwen3_tts.yaml:ro
|
2026-06-19 17:22:28 +02:00
|
|
|
- ./deploy/qwen3_tts_clone.yaml:/deploy/qwen3_tts_clone.yaml:ro
|
|
|
|
|
- ./docker/entrypoint_clone.sh:/entrypoint_clone.sh:ro
|
|
|
|
|
- ./docker/patch_qwen3_tts_runtime.py:/patch_qwen3_tts_runtime.py:ro
|
2026-06-18 17:27:42 +02:00
|
|
|
command: ["/bin/bash", "/entrypoint_clone.sh"]
|
|
|
|
|
restart: "no"
|
|
|
|
|
healthcheck:
|
2026-06-19 15:52:58 +02:00
|
|
|
test: ["CMD", "curl", "-sf", "http://localhost:8091/health"]
|
2026-06-18 17:27:42 +02:00
|
|
|
interval: 30s
|
|
|
|
|
timeout: 10s
|
|
|
|
|
retries: 5
|
|
|
|
|
start_period: 120s
|