FROM python:3.12-slim AS base

WORKDIR /app

RUN apt-get update && apt-get install -y --no-install-recommends \
    libmediainfo0v \
    zlib1g-dev \
    && rm -rf /var/lib/apt/lists/*

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

COPY . .

RUN python -m compileall src/

ARG USER=epmatcher
ARG UID=1000
ARG GID=1000

RUN groupadd -g "$GID" "$USER" && \
    useradd -u "$UID" -g "$GID" -m -s /bin/bash "$USER" && \
    mkdir -p /app/src/.tvdb_cache && \
    chown -R "$USER":"$USER" /app

USER $USER

ENTRYPOINT ["python"]
CMD ["episode_matcher.py"]
