IMLC.ME

如何在 Docker 里跑 Puppeteer

虽然官方在 Running Puppeteer in Docker 中 描述了如何在容器内跑 Puppeteer,但似乎已经随着后续的更新失效了?

这里借用 zenika/alpine-chrome 制作好的 base image。

循例感谢作者的无私开源。

FROM zenika/alpine-chrome:with-node

# 通过环境变量通知 Puppeteer 跳过下载 Chromium
ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD 1
ENV PUPPETEER_EXECUTABLE_PATH /usr/bin/chromium-browser

WORKDIR /app
COPY --chown=chrome package.json  ./
# 使用阿里提供的 npm 国内镜像安装,非中国用户无需配置
RUN yarn config set registry https://registry.npmmirror.com && yarn
COPY --chown=chrome . ./
ENTRYPOINT ["tini", "--"]
CMD ["node", "index.js"]