Internal, host-specific notes. Not intended as public deployment documentation.
-
Host: shared live host; multiple containers coexist.
-
Docker Compose lives at
~/docker/docker-agent/docker-compose.yml(root@docker-agent, 192.168.10.72). -
Qwen3-TTS data lives under:
/var/data/autopirate/persona-forge/model→ HF cache (MODEL_CACHE_PATH)/var/data/autopirate/persona-forge/openvino→ OpenVINO IR (OV_DATA_PATH)/var/data/autopirate/persona-forge/voices→ VoiceDesign voices (VOICE_LIBRARY_PATH)/var/data/autopirate/persona-forge/voice/→ Reference audio (e.g. voice_A.wav)
- Start:
docker compose -f ~/docker/docker-agent/docker-compose.yml up -d persona-forge
- Stop (don’t touch unrelated services):
docker compose -f ~/docker/docker-agent/docker-compose.yml down persona-forge
- Pull new image (example):
export PERSONA_FORGE_IMAGE=ghcr.io/nmorgowicz-org/persona-forge:<sha>docker compose -f ~/docker/docker-agent/docker-compose.yml pull persona-forgedocker compose -f ~/docker/docker-agent/docker-compose.yml up -d persona-forge
- Export (stop service first if constrained):
docker compose -f ~/docker/docker-agent/docker-compose.yml down persona-forgedocker compose -f ~/docker/docker-agent/docker-compose.yml run --rm exportdocker compose -f ~/docker/docker-agent/docker-compose.yml up -d persona-forge
Never run a 13 GiB export alongside a 10 GiB serve on this box (OOM).
After image, model, IR, or runtime-setting changes:
curl -fsS http://localhost:8318/health | python -m json.tooldocker inspect --format '{{.Image}}' persona-forgedocker exec persona-forge cat /sys/fs/cgroup/memory.currentdocker exec persona-forge cat /sys/fs/cgroup/memory.peakdocker stats --no-stream persona-forge
Record:
- Image tag/digest
- Source commit
- Model revision, IR metadata hash (from /health)
- Backend, compression, cache profile
- Prompts and sampling settings
- Latency, audio duration/RTF
- Memory current/peak, host available RAM, swap delta
- Listening notes
Use deterministic greedy runs for code/parity comparisons; use production sampling for final listening and performance decisions.
- Fastest: restore previous immutable image and restart Compose.
- Backend:
TTS_BACKEND=pytorch; verify via /health. Slower, for recovery only.
- Only touch
persona-forge; other services (litellm*,headroom-proxy,crowdsec,hermes-*,*arr,searxng) must not be affected. - Keep port 8318 trusted-network-only or behind an authenticated reverse proxy.