FROM python:3.11-slim # Install ffmpeg (required for WAV→MP3 conversion) RUN apt-get update && apt-get install -y --no-install-recommends ffmpeg && rm -rf /var/lib/apt/lists/* WORKDIR /app # Copy requirements first for better layer caching COPY requirements.txt . # Install all Python deps (torch glibc wheels work on Debian-slim) RUN pip install --no-cache-dir -r requirements.txt # Copy application code COPY . . # Environment defaults (override at runtime as needed) ENV OLLAMA_URL=http://host.docker.internal:11434/api/generate ENV MODEL_NAME=gemma4:e2b ENV PORT=8080 ENV POLL_INTERVAL=21600 ENV DATA_DIR=/app/data ENV TTS_VOICE=af_heart # Create data directory structure RUN mkdir -p /app/data/audio EXPOSE 8080 CMD ["python", "pipeline.py"]