首页
/ 推荐使用:Docker化的Chromium头less远程调试模式

推荐使用:Docker化的Chromium头less远程调试模式

2024-06-21 07:49:35作者:卓艾滢Kingsley

1、项目介绍

注意:该项目已被弃用,建议转向https://github.com/nextools/images/tree/master/chromium

Dockerized Chromium Headless Remote是一个巧妙的开源项目,它将Chromium浏览器封装在一个Docker容器中,并以头less模式和远程调试模式运行。这个项目由DeepSweet维护,旨在提供一个便捷的环境,让用户能够轻松地在各种环境中利用Chromium的最新功能,特别是对于自动化测试和无界面网页数据采集等场景。

2、项目技术分析

该容器基于Ubuntu Bionic,包含了Chromium的特定版本(在这个情况下是80)。关键特点是它的头less模式,这是一种无需UI界面即可运行浏览器的方式,大大减少了资源消耗。此外,项目还启用了远程调试模式,允许开发者通过WebSocket接口与Chromium进行交互,实现对页面的控制和数据采集,这得益于Google的Puppeteer库。

项目的Docker镜像大小被优化,确保快速下载和部署。通过命令行参数,你可以自定义字体目录,使Chromium能够使用你的本地字体。

3、项目及技术应用场景

  • 自动化测试:配合Puppeteer,可以编写脚本来模拟用户行为,如点击按钮、填写表单等,用于端到端的Web应用程序测试。
  • 无服务器渲染:在服务器上运行Chromium,动态生成页面的静态HTML,提高SEO排名。
  • 数据分析和采集:头less模式使得在后台运行网页数据采集成为可能,尤其适用于大数据分析或构建Web采集工具。
  • 教育和研究:学生和研究人员可以在不安装Chromium的情况下,通过远程调试来学习网络技术和前端开发。

4、项目特点

  • 轻量级容器:Docker镜像大小经过优化,便于快速部署。
  • 实时更新:虽然项目已废弃,但在其活跃期间,通过Docker官方镜像仓库自动构建,可以方便地升级到新版本。
  • 兼容性好:与Puppeteer无缝集成,支持远程调试API,能与多种编程语言协同工作。
  • 自定义字体:允许挂载本地字体文件夹,满足个性化需求。

总的来说,Dockerized Chromium Headless Remote为开发者提供了灵活且高效的Chromium运行环境,尽管它已经不再更新,但仍然可以作为旧项目的支持或者参考。如果你有相关的需求,不妨尝试一下这个项目,体验它带来的便利和效率提升。

登录后查看全文
热门项目推荐

项目优选

收起
kernelkernel
deepin linux kernel
C
27
11
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
466
3.47 K
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
10
1
leetcodeleetcode
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
65
19
flutter_flutterflutter_flutter
暂无简介
Dart
715
172
giteagitea
喝着茶写代码!最易用的自托管一站式代码托管平台,包含Git托管,代码审查,团队协作,软件包和CI/CD。
Go
23
0
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
203
82
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.27 K
695
rainbondrainbond
无需学习 Kubernetes 的容器平台,在 Kubernetes 上构建、部署、组装和管理应用,无需 K8s 专业知识,全流程图形化管理
Go
15
1
apintoapinto
基于golang开发的网关。具有各种插件,可以自行扩展,即插即用。此外,它可以快速帮助企业管理API服务,提高API服务的稳定性和安全性。
Go
22
1