Container artifacts to deploy alongside the live chatterbox (:8196) on irv-ml1.
- Dockerfile: thin overlay FROM local/chatterbox:v1 (sibling's image, has the
chatterbox lib + torch + fastapi) + COPY scheduler.py app.py; runs uvicorn.
- compose.yaml: mirrors the sibling chatterbox stack (runtime: nvidia +
NVIDIA_VISIBLE_DEVICES; host IP:port, no traefik-net — these GPU TTS services
aren't traefik-fronted). Port 8197, /health healthcheck, homepage labels,
reuses /worktank/chatterbox/{cache,reference_audio}.
- .env.example: GPU default device 1 (A6000) — turbo is fp32, 3090 free VRAM is
tight; port reservations; perf-lever toggles.
Not yet deployed — awaiting operator go (shared GPU host, runs beside production).
20 lines
801 B
Docker
20 lines
801 B
Docker
# chatterbox-fast — streaming TTS server.
|
|
#
|
|
# Layers our streaming server (app.py + scheduler.py) on top of the proven
|
|
# chatterbox base image (devnen's, already built locally by the sibling
|
|
# `chatterbox` stack). That base carries the chatterbox lib + torch +
|
|
# fastapi/uvicorn/pydantic — verified present — so this stays a thin overlay.
|
|
#
|
|
# Build on irv-ml1, where local/chatterbox:<tag> exists. Bump the base via the
|
|
# CHATTERBOX_BASE build arg (compose passes it from .env: CBF_BASE_TAG).
|
|
ARG CHATTERBOX_BASE=local/chatterbox:v1
|
|
FROM ${CHATTERBOX_BASE}
|
|
|
|
# Only the two runtime modules — tests/bench/README stay out of the image.
|
|
COPY scheduler.py app.py /cbf/
|
|
WORKDIR /cbf
|
|
|
|
# The base image sets devnen's own entrypoint; clear it and run our server.
|
|
ENTRYPOINT []
|
|
CMD ["python", "app.py"]
|