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"]
