ws-puppeteer / Dockerfile
qsyhh6's picture
Update Dockerfile
930deaf verified
FROM node:20
# 安装 Puppeteer 依赖
RUN apt-get update && apt-get install -y \
wget \
gnupg \
--no-install-recommends \
&& apt-get install -y \
libnss3 \
libatk-bridge2.0-0 \
libgtk-3-0 \
libx11-xcb1 \
libxcomposite1 \
libxrandr2 \
libxss1 \
libasound2 \
libx11-dev \
libgbm-dev \
fonts-liberation \
libappindicator3-1 \
libxshmfence1 \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# 创建用户和组
RUN groupadd -r appuser && useradd -r -g appuser appuser
# 克隆项目
RUN git clone https://github.com/KarinJS/karin-puppeteer.git /app \
&& cd /app \
&& npm --registry=https://registry.npmmirror.com install pnpm -g \
&& pnpm install -P
# 设置工作目录
WORKDIR /app
# 创建目录并设置权限
RUN mkdir -p /app/config/config /app/data && chown -R appuser:appuser /app
# 设定权限
RUN chmod -R 777 /app/config /app/data
# 切换到非 root 用户
USER appuser
# 暴露配置文件中 HTTP 服务的端口
EXPOSE 7000
# 启动应用
CMD ["node", "."]