56 lines
1.5 KiB
Docker
56 lines
1.5 KiB
Docker
ARG PLAYWRIGHT_IMAGE=mcr.microsoft.com/playwright/python:v1.49.0-noble
|
|
FROM ${PLAYWRIGHT_IMAGE}
|
|
|
|
# Установка системных зависимостей
|
|
# socat — проброс портов для CDP
|
|
# Видеокодеки и мультимедийные библиотеки для воспроизведения видео в Chrome
|
|
RUN apt-get update && apt-get install -y \
|
|
socat \
|
|
libgstreamer1.0-0 \
|
|
gstreamer1.0-plugins-base \
|
|
gstreamer1.0-plugins-good \
|
|
gstreamer1.0-plugins-bad \
|
|
gstreamer1.0-plugins-ugly \
|
|
gstreamer1.0-libav \
|
|
libavcodec-extra \
|
|
libavformat-dev \
|
|
libavutil-dev \
|
|
libnss3 \
|
|
libatk-bridge2.0-0 \
|
|
libdrm2 \
|
|
libxkbcommon0 \
|
|
libgbm1 \
|
|
libvpx-dev \
|
|
libopus-dev \
|
|
fonts-liberation \
|
|
fonts-noto-color-emoji \
|
|
fonts-noto-cjk \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# Установка дополнительных Python зависимостей
|
|
RUN pip install --no-cache-dir --root-user-action=ignore \
|
|
fastapi \
|
|
uvicorn \
|
|
pydantic \
|
|
browser-use \
|
|
langchain-openai \
|
|
langchain \
|
|
python-dotenv \
|
|
setuptools
|
|
|
|
WORKDIR /app
|
|
|
|
# Копируем stealth-расширение для обхода антифрода
|
|
COPY stealth-extension/ /app/stealth-extension/
|
|
|
|
# Копируем код приложения
|
|
COPY app.py .
|
|
|
|
# Создаем директорию для данных браузера
|
|
RUN mkdir -p /app/browser-data && chmod 777 /app/browser-data
|
|
|
|
EXPOSE 8383
|
|
EXPOSE 9222
|
|
|
|
CMD ["python", "app.py"]
|