mmdd / Dockerfile
aimdeepcafe's picture
Update Dockerfile
bb9affe verified
FROM ghcr.io/andclear/q_q:main
# 用于添加额外的apt包
ARG APT_PACKAGES=""
# 用于添加额外的pip包
ARG PIP_PACKAGES="matplotlib jmcomic browser_cookie3 img2pdf kwmatcher aiosqlite playwright python-telegram-bot telegramify-markdown"
USER root
# 1. 安装所有必要依赖(包含虚拟X服务器和字体库)
RUN apt-get update && apt-get install -y \
git \
jq \
curl \
libnss3 \
libnspr4 \
libatk1.0-0 \
libatk-bridge2.0-0 \
libcups2 \
libdrm2 \
libxkbcommon0 \
libxcomposite1 \
libxdamage1 \
libxfixes3 \
libxrandr2 \
libgbm1 \
libasound2 \
libatspi2.0-0 \
libwayland-client0 \
xvfb \
libpci-dev \
fonts-freefont-ttf \
fontconfig \
xauth \
dbus \
${APT_PACKAGES} \
&& rm -rf /var/lib/apt/lists/*
# 2. 配置缓存目录权限
RUN mkdir -p /.cache && chmod 777 /.cache
# 3. 安装Python依赖
RUN if [ ! -z "${PIP_PACKAGES}" ]; then pip install ${PIP_PACKAGES}; fi
# 4. 安装Playwright浏览器(使用虚拟显示)
ENV PLAYWRIGHT_BROWSERS_PATH=/app/ms-playwright
RUN playwright install --with-deps firefox \
&& chmod -R 777 /app/ms-playwright
# 5. 设置运行时环境变量
ENV DISPLAY=:99
ENV FONTCONFIG_PATH=/etc/fonts
ENV DBUS_SESSION_BUS_ADDRESS=/dev/null