FROM mcr.microsoft.com/playwright/python:v1.62.0-noble WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt RUN playwright install chrome COPY app.py extractor.py ./ ENV PYTHONUNBUFFERED=1 EXPOSE 8080 CMD ["bash", "-lc", "Xvfb :99 -screen 0 1280x1024x24 -nolisten tcp & export DISPLAY=:99; sleep 1; exec uvicorn app:app --host 0.0.0.0 --port 8080"]