skald/engines/tortoise/Dockerfile
Cobb Hayes 346cea515d Public-flip audit: env-driven paths, scrub audit-ticket prefixes, terser README
Lucy bind paths + LAN host pins replaced with env defaults. Repository URLs
→ git.sulkta.com. Audit-changelog scaffolding stripped from inline comments
(technical reasoning preserved). README sheds marketing scaffolding. AI-speak
in load-bearing prompts/SOULs left alone — that IS the product.
2026-05-27 11:42:58 -07:00

41 lines
1.1 KiB
Docker

# Tortoise-TTS. Apache 2.0 code + weights.
#
# ~26 built-in voices (no cloning): angie, daniel, deniro, emma,
# freeman, geralt, halle, jlaw, lj, mol, myself, pat, pat2, rainbow,
# snakes, tim_reynolds, tom, train_atkins, train_dotrice,
# train_dreams, train_grace, train_kennard, train_lescault,
# train_mouse, weaver, william.
#
# Slow: standard preset is ~10x slower than Kokoro; high_quality is
# ~30x. Trade for quality.
FROM pytorch/pytorch:2.6.0-cuda12.4-cudnn9-runtime
ENV DEBIAN_FRONTEND=noninteractive \
PYTHONUNBUFFERED=1 \
HF_HOME=/cache/hf \
HF_HUB_DISABLE_TELEMETRY=1 \
TORTOISE_MODELS_DIR=/cache/tortoise-models
RUN apt-get update && apt-get install -y --no-install-recommends \
ffmpeg \
git \
ca-certificates \
curl \
&& rm -rf /var/lib/apt/lists/*
RUN pip install --no-cache-dir \
'tortoise-tts>=3.0.0' \
'fastapi>=0.115.0' \
'uvicorn>=0.32.0' \
'soundfile>=0.13.0' \
'numpy<2'
RUN mkdir -p /cache/hf /cache/tortoise-models /audio
COPY server.py /app/server.py
WORKDIR /app
EXPOSE 7860
CMD ["uvicorn", "server:app", "--host", "0.0.0.0", "--port", "7860"]