FROM python:3.12-slim-bookworm
ENV PYTHONDONTWRITEBYTECODE=1 PYTHONUNBUFFERED=1
RUN apt-get update && apt-get install -y --no-install-recommends ffmpeg comskip tini ca-certificates \
    && rm -rf /var/lib/apt/lists/*
# Ship the matching Comskip source and notices with the binary distribution.
RUN sed -i 's/^Types: deb$/Types: deb deb-src/' /etc/apt/sources.list.d/debian.sources \
    && apt-get update \
    && mkdir -p /usr/share/iptvio-server/comskip-source \
    && cd /usr/share/iptvio-server/comskip-source \
    && apt-get source --download-only "comskip=$(dpkg-query -W -f='${Version}' comskip)" \
    && rm -rf /var/lib/apt/lists/*
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY iptvio_server ./iptvio_server
COPY zaptvio_server ./zaptvio_server
COPY web ./web
COPY apple-roots ./apple-roots
USER 1000:1000
EXPOSE 8443
ENTRYPOINT ["/usr/bin/tini", "--"]
CMD ["python", "-m", "zaptvio_server"]
