Docker实战:使用Docker部署neko自托管虚拟浏览器

2025-01-11 00:20:23 4点赞 18收藏 6评论

Docker实战:使用Docker部署neko自托管虚拟浏览器

一、neko介绍

1.1 neko简介

  • neko简介

Neko,这是一个在 Docker 中运行并使用 WebRTC 技术的自托管虚拟浏览器。Neko 是一个功能强大的工具,允许您在虚拟环境中运行功能齐全的浏览器,使您能够从任何地方安全、私密地访问互联网。借助 Neko,您可以像在常规浏览器上一样浏览网页、运行应用程序并执行其他任务,所有这些都在安全且隔离的环境中进行。无论您是想要测试 Web 应用程序的开发人员、寻求安全浏览体验的注重隐私的用户,还是只是想要利用虚拟浏览器的便利性和灵活性的人,Neko 是完美的解决方案。

1.2 neko特点

  • 多用户同时访问:Neko 支持多个用户共享一个浏览器环境,适合团队协作、组织共享或个人跨设备访问需求。

  • 安全的权限共享:提供一种机制,允许用户安全地与他人共享浏览器访问权限,无须担心隐私泄露或配置复杂性。

  • 维护简便:用户不必为每个新成员单独配置或管理设置,简化了共享环境的维护工作。

  • 协同工作与资源共享:适用于项目合作、访问共享资源场景,促进团队间的高效协作。

  • 个人共享便利:也适合个人用户与家人、朋友分享浏览器访问,便于日常生活中的信息共享。

  • 虚拟观看派对与演示:特色虚拟浏览器功能支持远程观看聚会和互动演示,打破地理位置限制。

  • 远程互动性:使用户能够远程参与,保持社交和工作联系,不受物理距离影响。

  • 实时互动屏幕共享:集成的屏幕共享与实时互动功能,优化了远程沟通与协作体验。

  • 易于邀请与加入:用户可以轻松邀请他人加入虚拟环境,降低了技术门槛,提高了使用的便捷性。

1.3 neko使用场景

  1. Web 开发与测试:Neko 为开发人员提供了一个理想的环境来测试网页应用的不同版本或功能,尤其是在需要隔离测试条件以避免本地环境干扰时。它支持多用户协作,使得团队成员可以共同审查代码更改,进行实时调试,以及在不同平台和浏览器配置下验证应用兼容性。

  2. 安全浏览与隐私保护:对于注重隐私的用户,Neko 提供了一个增强安全性的浏览选项。通过在隔离的容器中运行浏览器,用户的浏览历史、cookies 和其他敏感信息不会保存在本地设备上,有效防止了数据泄露和跟踪,特别适合处理敏感信息或在公共网络环境下上网。

  3. 数字营销与广告测试:市场营销人员可以利用 Neko 来模拟不同地理位置的用户浏览习惯,进行广告投放效果测试、SEO 优化分析,以及监控竞争对手的在线活动,所有这些都在不影响个人浏览记录的情况下完成。

  4. 教育与培训:教育机构可以利用 Neko 举办线上课程,特别是在教授网络技术、网络安全或需要学生集体参与在线实验的课程中。教师可以广播自己的浏览器会话给全班,学生也能在各自的环境中跟随操作,促进了互动学习。

  5. 远程工作与团队协作:Neko 使远程团队能够共享一个浏览器环境工作,方便进行项目演示、网页审查、内容创作讨论等,提高了团队协作效率,减少了因技术配置不一致导致的沟通障碍。

  6. 产品演示与客户服务:销售团队和客服代表可以使用 Neko 进行产品演示,实时展示网站功能或解决客户问题,而无需客户下载任何软件或共享他们的屏幕,增强了客户体验和信任。

  7. 安全审计与渗透测试:网络安全专业人员可以利用 Neko 在受控环境中执行安全审计和渗透测试,评估 Web 应用的安全漏洞,而不危及实际生产系统或留下痕迹。

  8. 临时浏览需求:对于那些偶尔需要访问特定网站但不想在常用浏览器留下痕迹的用户,Neko 提供了一个快速、便捷的解决方案,满足一次性或短期的匿名浏览需求。

二、本地环境介绍

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为centos7.6。

Docker实战:使用Docker部署neko自托管虚拟浏览器

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎; 2.使用Docker部署neko虚拟共享浏览器。

三、本地环境检查

3.1 检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。

[root@jeven neko]# systemctl status docker ● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled) Active: active (running) since Sun 2024-05-12 08:34:14 CST; 11h ago Main PID: 11565 (dockerd) Tasks: 23 Memory: 153.6M CGroup: /system.slice/docker.service

3.2 检查Docker版本

检查Docker版本

[root@jeven ~]# docker -v Docker version 20.10.17, build 100c701

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。

[root@jeven ~]# docker compose version Docker Compose version v2.6.0

四、下载neko镜像

在docker hub镜像仓库中拉取neko镜像,本次使用火狐内核版本m1k1o/neko:firefox,其余可选择谷歌内核版本m1k1o/neko:chromium,树莓派版本m1k1o/neko:arm-chromium等。

[root@jeven neko]# docker pull m1k1o/neko:firefox firefox: Pulling from m1k1o/neko Digest: sha256:9ed6532d88b1ccf7645e6c1938bb4024cb6ea62729e2125d3acd511aea93bb7a Status: Image is up to date for m1k1o/neko:firefox docker.io/m1k1o/neko:firefox

五、部署署neko应用

5.1 创建部署目录

创建部署目录/data/neko/

mkdir -p /data/neko/ && cd /data/neko/

5.2 编辑docker-compose.yml文件

如果使用docker-cli直接部署,可参考以下命令。主要修改NEKO_NAT1TO1为自己服务器IP地址,其余部分可根据下面给的环境变量说明自行修改。

docker run -d --restart always --name neko --shm-size="2gb" -p 9800:8080 -p 52000-52100:52000-52100/udp -e NEKO_PASSWORD='neko' -e NEKO_PASSWORD_ADMIN='admin' -e NEKO_NAT1TO1=192.168.3.166 -e NEKO_SCREEN=1920x1080@30 -e NEKO_ICELITE=1 -e NEKO_EPR=52000-52100 m1k1o/neko:latest

编辑docker-compose.yml文件

version: "3.8" services: neko: image: "m1k1o/neko:firefox" container_name: "neko" restart: "always" shm_size: "2gb" ports: - "9800:8080" - "52000-52100:52000-52100/udp" environment: NEKO_SCREEN: 1920x1080@30 NEKO_PASSWORD: neko NEKO_PASSWORD_ADMIN: admin NEKO_NAT1TO1: 192.168.3.166 NEKO_EPR: 52000-52100 NEKO_ICELITE: 1 | 参数名称 | 描述 | 示例值/说明 | |----------------------|--------------------------------------------------------------|-----------------------------------------------------------------| | `--shm-size=2gb` | 设置共享内存大小为 2GB,此设置为必须。 | | | `--cap-add SYS_ADMIN` | 使用 Chromium 内核时需添加,以获取必要的系统管理权限。 | | | `NEKO_PASSWORD` | 普通用户的登录密码。 | `mySecurePass123` | | `NEKO_PASSWORD_ADMIN` | 管理员(admin)用户的登录密码。 | `AdminSecurePass456` | | `NEKO_NAT1TO1` | 局域网使用时设置为服务器本地 IP,公网则自动获取公网 IP,可选。 | `192.168.3.166` 或留空自动获取 | | `NEKO_SCREEN` | 自定义浏览器窗口分辨率。 | `1920x1080` | | `NEKO_ICELITE` | 启用 Ice Lite 协议以优化连接性能,可选。 | `true` 或留空默认值 | | `NEKO_EPR` | 设置 WebRTC 的 UDP 端口范围,用于P2P连接。 | `52000-52100` | | `NEKO_FILE_TRANSFER_ENABLED` | 启用文件传输功能,需要设置为 `true`。 | `true` 或默认 `false` 如果不需要启用文件传输功能 |

5.3 创建neko容器

  • 使用docker-compose.yaml文件创建neko容器

docker compose up -d Docker实战:使用Docker部署neko自托管虚拟浏览器

5.4 检查neko容器状态

检查neko容器状态,确保neko容器正常启动。

[root@jeven neko]# docker compose ps NAME COMMAND SERVICE STATUS PORTS neko "/usr/bin/supervisor…" neko running (healthy) 0.0.0.0:9800->8080/tcp, 0.0.0.0:52000-52100->52000-52100/udp, :::9800->8080/tcp, :::52000-52100->52000-52100/udp

六、访问neko首页

6.1 进入neko初始页

访问地址:http://192.168.3.166:9800,将IP替换为自己服务器IP地址,进入到neko初始页初始页。如果无法访问,则检查服务器防火墙是否设置,云服务器的安全组端口是否放行等。

Docker实战:使用Docker部署neko自托管虚拟浏览器

6.2 登录neko

输入我们设置的登录账号密码admin/admin,如果使用其他普通用户则账号密码为xxx/neko

Docker实战:使用Docker部署neko自托管虚拟浏览器

6.3 访问测试

  • 开启键盘鼠标操作

Docker实战:使用Docker部署neko自托管虚拟浏览器

我们在浏览器,输入网址,这里输入本人CSDN博客地址进行测试。

Docker实战:使用Docker部署neko自托管虚拟浏览器

6.4 其他用户访问

我们在另外浏览器或者电脑打开:http://192.168.3.166:9800,输入账户名密码:jeven/neko。

Docker实战:使用Docker部署neko自托管虚拟浏览器Docker实战:使用Docker部署neko自托管虚拟浏览器

我们在聊天区域,发送信息。

Docker实战:使用Docker部署neko自托管虚拟浏览器

我们再返回到admin用户下,可以成功看到jeven用户发送的信息。

Docker实战:使用Docker部署neko自托管虚拟浏览器

七、总结

Neko 是一款创新的虚拟浏览器解决方案,巧妙地结合了Docker容器技术和WebRTC通信协议,为用户提供了一个强大、灵活且安全的在线浏览平台。它的核心价值在于创造了一个与本机系统隔离的沙盒环境,让用户能够在任何地点安全私密地访问网络资源,而不用担心数据泄露或隐私侵犯。Neko不仅适用于开发者进行Web应用测试,也非常适合注重隐私的普通用户、远程协作团队,以及需要高性能、低延迟在线交互的各类应用场景,如观看派对、在线教学和企业演示等。其便捷的多用户访问控制和丰富的定制化选项,进一步提升了用户体验和工作效率。

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起

华为家庭存储4TBMate70手机一碰扩容双盘位nas网络存储器相册备份家用硬盘网盘私有云服务器

华为家庭存储4TBMate70手机一碰扩容双盘位nas网络存储器相册备份家用硬盘网盘私有云服务器

¥2399起 去购买

绿联私有云DXP4800Plus8G内存四盘位NAS网络存储个人云硬盘家庭服务器万兆网口适用iPhone16

绿联私有云DXP4800Plus8G内存四盘位NAS网络存储个人云硬盘家庭服务器万兆网口适用iPhone16

暂无报价

maxhub迷你主机台式电脑N100英特尔mini商用台式电脑主机便携家用游戏电脑办公小机箱组装电脑16G+512G

maxhub迷你主机台式电脑N100英特尔mini商用台式电脑主机便携家用游戏电脑办公小机箱组装电脑16G+512G

暂无报价

戴尔(DELL)OptiPlex7020MFF12代商用办公迷你mini台式电脑主机i3-12100T/16G/512G/集显+蓝牙WIFI定制

戴尔(DELL)OptiPlex7020MFF12代商用办公迷你mini台式电脑主机i3-12100T/16G/512G/集显+蓝牙WIFI定制

暂无报价

UGREEN 绿联 DXP4800 四盘位 私有云NAS存储(Intel N100、8GB)

UGREEN 绿联 DXP4800 四盘位 私有云NAS存储(Intel N100、8GB)

2199元起

UGREEN 绿联 DXP2800 双盘位 私有云NAS存储(Intel N100、8GB)

UGREEN 绿联 DXP2800 双盘位 私有云NAS存储(Intel N100、8GB)

1699元起

UGREEN 绿联 DXP4800 Plus 四盘位 私有云NAS存储

UGREEN 绿联 DXP4800 Plus 四盘位 私有云NAS存储

2179元起

HUAWEI 华为 AS6020 双盘位 家庭存储 NAS

HUAWEI 华为 AS6020 双盘位 家庭存储 NAS

1699元起

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

1696元起

UGREEN 绿联 DXP480T Plus 四盘位 私有云NAS存储(酷睿i5-1235U、8GB)

UGREEN 绿联 DXP480T Plus 四盘位 私有云NAS存储(酷睿i5-1235U、8GB)

3559元起

UGREEN 绿联 DXP6800 Pro 六盘位 NAS存储(Intel Core i5、无盘)

UGREEN 绿联 DXP6800 Pro 六盘位 NAS存储(Intel Core i5、无盘)

4899元起

UGREEN 绿联 绿联 DXP6800 Plus 六盘位NAS网络存储个人云硬盘服务器

UGREEN 绿联 绿联 DXP6800 Plus 六盘位NAS网络存储个人云硬盘服务器

4499元起

UGREEN 绿联 DXP8800 Plus 八盘位 NAS存储(Intel Core i5、无盘)

UGREEN 绿联 DXP8800 Plus 八盘位 NAS存储(Intel Core i5、无盘)

6999元起

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

1699元起

华为家庭存储4TB 16TB 无盘版 一碰扩容 双盘位nas网络存储器

华为家庭存储4TB 16TB 无盘版 一碰扩容 双盘位nas网络存储器

暂无报价

绿联 私有云DX4600 Pro数据博士8G版 四盘位Nas网络存储硬盘服务器( 配2*4T酷狼硬盘)文件共享 个人云网盘

绿联 私有云DX4600 Pro数据博士8G版 四盘位Nas网络存储硬盘服务器( 配2*4T酷狼硬盘)文件共享 个人云网盘

暂无报价

UGREEN 绿联 DH2600 双盘位NAS (N5105、4GB)

UGREEN 绿联 DH2600 双盘位NAS (N5105、4GB)

1224.02元起

UGREEN 绿联 私有云DH2100+数据博士 Nas网络存储服务器(双盘位 配2×2T酷狼硬盘)

UGREEN 绿联 私有云DH2100+数据博士 Nas网络存储服务器(双盘位 配2×2T酷狼硬盘)

暂无报价

UGREEN 绿联 私有云DX4600 8G版 32T四盘位Nas网络存储服务器文件共享 个人云网盘支持手机平板扩容适用苹果15配4*8TB酷狼硬盘

UGREEN 绿联 私有云DX4600 8G版 32T四盘位Nas网络存储服务器文件共享 个人云网盘支持手机平板扩容适用苹果15配4*8TB酷狼硬盘

7199元起

UGREEN 绿联 私有云DH2100+数据博士 Nas网络存储服务器(双盘位 配2×4T酷狼硬盘)家庭个人云网盘

UGREEN 绿联 私有云DH2100+数据博士 Nas网络存储服务器(双盘位 配2×4T酷狼硬盘)家庭个人云网盘

暂无报价
6评论

  • 精彩
  • 最新
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
18
扫一下,分享更方便,购买更轻松