FROM python:3.12-slim

RUN apt-get update && \
    apt-get install -y --no-install-recommends ffmpeg curl && \
    rm -rf /var/lib/apt/lists/*

WORKDIR /app

COPY bin/backend/requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

COPY bin/backend/ /app/
COPY bin/frontend/ /app/frontend/
COPY bin/config.yml.dist /app/config.yml.dist

RUN mkdir -p /app/data/recordings

ENV DATA_DIR=/app/data
ENV STATIC_DIR=/app/frontend/static
ENV PYTHONUNBUFFERED=1

EXPOSE 8484

HEALTHCHECK --interval=30s --timeout=5s --start-period=10s --retries=3 \
    CMD curl -f http://localhost:8484/api/health || exit 1

CMD ["python", "app.py"]
