本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

包含Google Puppeteer和截图脚本的Docker镜像。
及配套截图脚本,可快速用于网页自动化操作、网页截图生成、定时截图等场景,简化Puppeteer环境配置流程。
docker pull schliflo/docker-puppeteer:latest # 或指定版本 docker pull schliflo/docker-puppeteer:2.1.0
启动Puppeteer浏览器实例时,必须添加--no-sandbox和--disable-setuid-sandbox参数:
const puppeteer = require('puppeteer'); (async() => { const browser = await puppeteer.launch({ args: [ '--no-sandbox', '--disable-setuid-sandbox' ] }); const page = await browser.newPage(); await page.goto('[***] {waitUntil: 'networkidle2'}); browser.close(); })();
若遇到页面崩溃并提示BUS_ADRERR错误(chromium issue),需通过--shm-size参数增加共享内存大小:
docker run --shm-size 1G --rm -v <本地脚本路径>:/app/index.js schliflo/docker-puppeteer:latest
若出现随机导航错误(如无法访问URL),可能是Docker启用了IPv6导致。通过--sysctl参数禁用IPv6可修复:
docker run --shm-size 1G --sysctl net.ipv6.conf.all.disable_ipv6=1 --rm -v <本地脚本路径>:/app/index.js schliflo/docker-puppeteer:latest
如需Chrome调试日志,添加--enable-logging参数(详细说明:[***]
const puppeteer = require('puppeteer'); (async() => { const browser = await puppeteer.launch({args: [ '--no-sandbox', '--disable-setuid-sandbox', // 调试日志参数 '--enable-logging', '--v=1' ]}); // ... })();
将本地脚本挂载到容器的/app/index.js路径,容器会自动执行该脚本:
docker run --shm-size 1G --rm -v <本地脚本路径>:/app/index.js schliflo/docker-puppeteer:latest
挂载本地目录至/app,并指定要运行的脚本文件名:
docker run --shm-size 1G --rm \ -v <本地目录路径>:/app \ schliflo/docker-puppeteer:latest \ node my_script.js
镜像内置简单截图工具,支持多种截图模式。
docker run --shm-size 1G --rm -v /tmp/screenshots:/screenshots \ schliflo/docker-puppeteer:latest \ <工具名称> '目标URL' 宽x高 [<延迟毫秒数>]
screenshot、full_screenshot、screenshot_series、full_screenshot_series1366x768截取指定尺寸窗口内的网页可见区域:
docker run --shm-size 1G --rm -v /tmp/screenshots:/screenshots \ schliflo/docker-puppeteer:latest \ screenshot '[***] 1366x768
输出:单行JSON格式结果
{ "date":"2017-09-01T05:03:27.464Z", "timestamp":1504242207, "filename":"screenshot_1366_768.png", "width":1366, "height":768 }
截图文件保存路径:/tmp/screenshots/screenshot_1366_768.png(对应本地挂载目录)
截取网页完整内容(包含滚动区域):
docker run --shm-size 1G --rm -v /tmp/screenshots:/screenshots \ schliflo/docker-puppeteer:latest \ full_screenshot '[***] 1366x768
文件名包含ISO格式时间戳,适用于定时截图场景:
# 基础系列截图 docker run --shm-size 1G --rm -v /tmp/screenshots:/screenshots \ schliflo/docker-puppeteer:latest \ screenshot_series '[***] 1366x768 # 全屏系列截图 docker run --shm-size 1G --rm -v /tmp/screenshots:/screenshots \ schliflo/docker-puppeteer:latest \ full_screenshot_series '[***] 1366x768
输出文件名示例:
2017-09-01T05:08:55.027Z_screenshot_1366_768.png # 或 2017-09-01T05:08:55.027Z_full_screenshot_1366_768.png
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429