本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
synthetics-node-browser-runtime 是一个集成了 Node.js 环境和浏览器运行时的 Docker 镜像,专为合成监控(Synthetic Monitoring)场景设计。该镜像提供了执行自动化浏览器测试和模拟用户交互的完整运行环境,可用于监控 Web 应用性能、验证前端功能完整性以及执行定时自动化测试任务。
docker run --rm synthetics-node-browser-runtime [测试脚本路径]
docker run --rm -v $(pwd)/tests:/app/tests synthetics-node-browser-runtime /app/tests/monitor.js
| 环境变量 | 描述 | 默认值 |
|---|---|---|
BROWSER_TYPE | 指定使用的浏览器类型 (chrome/firefox/edge) | chrome |
HEADLESS_MODE | 是否启用无头模式 (true/false) | true |
PAGE_LOAD_TIMEOUT | 页面加载超时时间(毫秒) | 30000 |
SCREEN_RESOLUTION | 模拟屏幕分辨率 | 1280x720 |
USER_AGENT | 自定义User-Agent字符串 | 浏览器默认 |
PROXY_SERVER | 指定代理服务器地址 | 无 |
PERFORMANCE_LOGGING | 是否启用性能日志记录 | false |
docker run --rm \ -e BROWSER_TYPE=firefox \ -e HEADLESS_MODE=false \ -e PAGE_LOAD_TIMEOUT=60000 \ -v $(pwd)/tests:/app/tests \ synthetics-node-browser-runtime /app/tests/performance-test.js
version: '3.8' services: synthetics-monitor: image: synthetics-node-browser-runtime environment: - BROWSER_TYPE=chrome - HEADLESS_MODE=true - PERFORMANCE_LOGGING=true volumes: - ./synthetic-tests:/app/tests - ./results:/app/results command: /app/tests/ecommerce-checkout.js restart: unless-stopped
// simple-monitor.js const { browser } = require('synthetics-runtime'); async function runTest() { // 启动浏览器 const page = await browser.newPage(); try { // 设置视口大小 await page.setViewport({ width: 1280, height: 720 }); // 访问目标页面 await page.goto('[***] { waitUntil: 'networkidle0' }); // 记录页面加载时间 const loadTime = await page.evaluate(() => { return performance.timing.loadEventEnd - performance.timing.navigationStart; }); console.log(`页面加载时间: ${loadTime}ms`); // 截图 await page.screenshot({ path: '/app/results/screenshot.png' }); // 简单交互示例 await page.click('a[href="/about"]'); await page.waitForNavigation({ waitUntil: 'networkidle0' }); } finally { // 关闭浏览器 await browser.close(); } } // 执行测试 runTest().catch(console.error);
启用详细性能监控:
docker run --rm \ -e PERFORMANCE_LOGGING=true \ -e OUTPUT_PERFORMANCE_DATA=/app/results/performance.json \ -v $(pwd)/results:/app/results \ synthetics-node-browser-runtime /app/tests/performance-monitor.js
结合 cron 实现定时监控:
docker run --name synthetics-cron \ -v $(pwd)/tests:/app/tests \ -v $(pwd)/cron:/etc/cron.d \ synthetics-node-browser-runtime \ cron -f /etc/cron.d/monitor-cron
其中 monitor-cron 文件内容:
*/5 * * * * root /usr/local/bin/node /app/tests/monitor.js >> /var/log/synthetics.log 2>&1
version: '3.8' services: synthetics-monitor: image: synthetics-node-browser-runtime container_name: web-synthetics-monitor restart: always environment: - BROWSER_TYPE=chrome - HEADLESS_MODE=true - PAGE_LOAD_TIMEOUT=45000 - TARGET_URL=[***] volumes: - ./tests:/app/tests - ./results:/app/results - ./logs:/var/log/synthetics command: /app/tests/main-monitor.js networks: - monitoring-network networks: monitoring-network: driver: bridge
apiVersion: batch/v1beta1 kind: CronJob metadata: name: synthetics-monitor spec: schedule: "*/10 * * * *" jobTemplate: spec: template: spec: containers: - name: synthetics-monitor image: synthetics-node-browser-runtime env: - name: BROWSER_TYPE value: "chrome" - name: HEADLESS_MODE value: "true" - name: TARGET_URL value: "[***]" volumeMounts: - name: test-scripts mountPath: /app/tests - name: results mountPath: /app/results volumes: - name: test-scripts configMap: name: synthetics-test-scripts - name: results persistentVolumeClaim: claimName: synthetics-results restartPolicy: OnFailure
免费版仅支持 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