FROM python:3.12-slim

ENV PYTHONUNBUFFERED=1
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update \
    && apt-get install -y --no-install-recommends \
      chromium \
      chromium-driver \
      ca-certificates \
      fonts-liberation \
      fonts-dejavu \
      libasound2 \
      libatk-bridge2.0-0 \
      libatk1.0-0 \
      libcups2 \
      libdbus-1-3 \
      libdrm2 \
      libgbm1 \
      libgtk-3-0 \
      libnss3 \
      libx11-xcb1 \
      libxcomposite1 \
      libxdamage1 \
      libxfixes3 \
      libxkbcommon0 \
      libxrandr2 \
      wget \
      xvfb \
    && rm -rf /var/lib/apt/lists/*

WORKDIR /crawler/app
COPY app/requirements.txt /tmp/requirements.txt
RUN pip install --no-cache-dir -r /tmp/requirements.txt

COPY app/ /crawler/app/
COPY docker-entrypoint.sh /crawler/docker-entrypoint.sh
RUN chmod +x /crawler/docker-entrypoint.sh

EXPOSE 8114
ENTRYPOINT ["/crawler/docker-entrypoint.sh"]

