CherithCutestory/vlengine-indextts2
0
1FROM python:3.11-slim2 3RUN apt-get update && apt-get install -y --no-install-recommends \4 build-essential \5 libsndfile1 \6 ffmpeg \7 git \8 rubberband-cli \9 librubberband-dev \10 && rm -rf /var/lib/apt/lists/*11 12RUN useradd -m -u 1000 user13WORKDIR /app14 15RUN pip install --no-cache-dir torch==2.8.0 torchaudio==2.8.016 17ENV GIT_LFS_SKIP_SMUDGE=118RUN pip install --no-cache-dir "indextts[webui] @ git+https://github.com/index-tts/index-tts.git@main"19 20RUN python -c "import indextts; import os; \21 pkg_dir = os.path.dirname(indextts.__file__); \22 cache_dir = os.path.join(pkg_dir, 'utils', 'tagger_cache'); \23 os.makedirs(cache_dir, exist_ok=True)" \24 && chmod -R a+rw $(python -c "import indextts; import os; print(os.path.dirname(indextts.__file__))")/utils/tagger_cache25 26COPY requirements.txt .27RUN pip install --no-cache-dir -r requirements.txt28 29RUN mkdir -p checkpoints && \30 python -c "from huggingface_hub import snapshot_download; snapshot_download('IndexTeam/IndexTTS-2', local_dir='checkpoints')" \31 || echo "Model download deferred to runtime startup"32 33COPY . .34 35RUN chown -R user:user /app36USER user37 38ENV PYTHONUNBUFFERED=139ENV HF_HOME=/app/.cache/huggingface40ENV MODEL_DIR=/app/checkpoints41 42EXPOSE 786043 44CMD ["sh", "-c", "OMP_NUM_THREADS=4 exec uvicorn app:app --host 0.0.0.0 --port 7860"]45 46 