tts-voice-creator-clone-and.../Dockerfile
mARTin-B78 631ca16290 Studio Notebook redesign: warm cream theme, sidebar, multi-file static structure
- New light UI: fixed 220px sidebar, single scrolling page, 8 named sections
- Static files split by concern: style.css, app.js, loader.js, nav.js
- Each page section is its own partial in static/sections/s-*.html
- loader.js fetches all section partials in parallel, then loads app.js and nav.js
- All original functionality, element IDs, and API endpoints preserved

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-25 19:53:01 +02:00

37 lines
2.1 KiB
Docker

# ─────────────────────────────────────────────────────────────────────────────
# TTS Voice Creator - Clone and Design — Docker image (ARM64 / aarch64 compatible)
#
# Web app (FastAPI + WaveSurfer.js) — no VNC, no Qt, no X11.
# Accessible on port 7860 via any browser.
# ─────────────────────────────────────────────────────────────────────────────
FROM python:3.11-slim-bookworm
ENV DEBIAN_FRONTEND=noninteractive
ENV PYTHONUNBUFFERED=1
# ── System packages ───────────────────────────────────────────────────────────
RUN apt-get update && apt-get install -y --no-install-recommends \
ffmpeg \
curl \
ca-certificates \
&& rm -rf /var/lib/apt/lists/*
# ── Python dependencies ───────────────────────────────────────────────────────
COPY requirements.txt /tmp/requirements.txt
RUN pip install --no-cache-dir -r /tmp/requirements.txt
# ── Application ───────────────────────────────────────────────────────────────
WORKDIR /app
COPY server.py .
COPY static/ static/
# ── Runtime user ──────────────────────────────────────────────────────────────
RUN mkdir -p /voices/active_voices /voices/hidden_voices /home/app/.config/tts-voice-creator && \
useradd -m -s /bin/bash app && \
chown -R app:app /app /voices /home/app
USER app
EXPOSE 7860
CMD ["python3", "server.py"]