打开/关闭菜单
打开/关闭外观设置菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

在搬瓦工上部署 NEKO,打造多人同步的“云浏览器”:修订间差异

来自md5.pw
Air留言 | 贡献
创建页面,内容为“在日常工作和生活中,我们经常遇到以下两个棘手的场景: # '''向零基础客户/朋友展示国际资源:''' 你需要向客户演示一个国外的网站,或者发一个 YouTube 视频给朋友看。但对方'''不懂技术''',也不会安装代理软件(VPN),导致沟通受阻。 # '''团队异地协同演示:''' 你需要和异地的同事或客户一起浏览同一个网页,进行实时讲解。传统的“屏幕共…”
 
Air留言 | 贡献
完善内容
第1行: 第1行:
在日常工作和生活中,我们经常遇到以下两个棘手的场景:
在日常工作和生活中,我们经常遇到以下两个棘手的场景:


# '''向零基础客户/朋友展示国际资源:''' 你需要向客户演示一个国外的网站,或者发一个 YouTube 视频给朋友看。但对方'''不懂技术''',也不会安装代理软件(VPN),导致沟通受阻。
'''1.向零基础客户/朋友展示国际资源:''' 你需要向客户演示一个国外的网站,或者发一个 YouTube 视频给朋友看。但对方'''不懂技术''',也不会安装代理软件(VPN),导致沟通受阻。
# '''团队异地协同演示:''' 你需要和异地的同事或客户一起浏览同一个网页,进行实时讲解。传统的“屏幕共享”画质差、延迟高,且对方无法进行交互操作。
 
'''2.团队异地协同演示:''' 你需要和异地的同事或客户一起浏览同一个网页,进行实时讲解。传统的“屏幕共享”画质差、延迟高,且对方无法进行交互操作。


今天,我们将利用搬瓦工 VPS 的 '''海外网络环境''' 和 '''CN2 GIA 低延迟''' 优势,部署一个运行在 Docker 里的“云端浏览器”('''NEKO''' )。
今天,我们将利用搬瓦工 VPS 的 '''海外网络环境''' 和 '''CN2 GIA 低延迟''' 优势,部署一个运行在 Docker 里的“云端浏览器”('''NEKO''' )。


'''神奇之处在于:''' 对方'''无需安装任何软件''',只需在自己的浏览器里打开你发的链接,就能像操作本地电脑一样,访问国际互联网,且你们看到的画面是'''毫秒级同步'''的。
'''这套方案优势在于:''' 对方'''无需安装任何软件''',只需在自己的浏览器里打开你发的链接,就能像操作本地电脑一样,访问国际互联网,且你们看到的画面是'''毫秒级同步'''的。


=== 一、核心优势与原理 ===
=== 一、核心优势与原理 ===
第20行: 第21行:
'''1.服务器推荐:''' 搬瓦工 E-Commerce 或 CN2 GIA 系列(低延迟是鼠标操作跟手的关键)。
'''1.服务器推荐:''' 搬瓦工 E-Commerce 或 CN2 GIA 系列(低延迟是鼠标操作跟手的关键)。


'''2.系统要求:''' Debian 11/12 或 Ubuntu 20.04+。
'''2.系统要求:''' Debian 12
 
'''3.内存要求:'''最低 1GB 内存,推荐配置 2GB 以上。
 
'''4.进阶要求''':安装 Nginx Proxy Manager ,[[在搬瓦工上部署 NEKO,打造多人同步的“云浏览器”|参考教程]]


'''3.内存要求:'''最低配置: 1GB 内存(必须开启 Swap 交换分区)
=== 三、部署 Docker 和 NEKO ===
我们将部署资源占用相对较小的 Firefox 版本,并针对 1G 内存进行了参数调优,本部分将一并完成 Docker 环境的安装


推荐配置2GB 及以上内存(体验更流畅
==== 1.SSH 连接与基础工具安装 ====
使用 SSH 工具连接到您的搬瓦工服务器(推荐使用 Xshell 等工具,如果你是个人或家庭使用,可以下载 Xshell[https://www.xshell.com/zh/free-for-home-school/ 下载链接]


'''4.基础环境:'''已经安装docker
然后执行下方命令安装必要的工具。<syntaxhighlight lang="abap">apt-get install wget curl vim sudo unzip -y</syntaxhighlight>为了优化编辑体验,执行以下命令,防止后期使用 <code>vi</code> 编辑时出现剪贴板或格式报错:<syntaxhighlight lang="abap">
echo set clipboard=unnamed >> ~/.vimrc
</syntaxhighlight>


=== 三、一键部署 NEKO + Caddy (轻量 HTTPS 版) ===
==== 2.安装并启动Docker ====
为了在'''不使用域名'''且'''节省内存'''的前提实现 HTTPS(解决剪贴板同步问题)我们将使用 '''Caddy''' 作为反向代理。
执行方命令安装 Docker,安装过程预计耗时数十秒。<syntaxhighlight lang="abap">wget -qO- get.docker.com | bash</syntaxhighlight>Docker 安装完成后执行以下命令启动 Docker 服务并设置开机自启:<syntaxhighlight lang="abap">
systemctl start docker
systemctl enable docker
</syntaxhighlight>


==== 1. 创建部署目录 ====
==== 3. 创建部署目录 ====
连接 SSH,执行以下命令:<syntaxhighlight lang="abap">
连接 SSH,执行以下命令:<syntaxhighlight lang="abap">
mkdir -p /root/neko && cd /root/neko
mkdir -p /root/neko && cd /root/neko
</syntaxhighlight>
</syntaxhighlight>


==== 2. 创建 Caddy 配置文件 ====
==== 4. 创建 Docker Compose 配置文件 ====
我们需要告诉 Caddy 如何处理流量。执行:<syntaxhighlight lang="abap">
vim Caddyfile
</syntaxhighlight>复制以下内容(注意::443 表示监听 HTTPS 端口):<syntaxhighlight lang="abap">
{
    auto_https disable_redirects
}
 
:443 {
    reverse_proxy neko:8080
    tls internal
}
 
</syntaxhighlight>保存退出(Esc -> :wq)。
 
==== 3. 创建 Docker Compose 配置文件 ====
<syntaxhighlight lang="abap">
<syntaxhighlight lang="abap">
vim docker-compose.yml
vim docker-compose.yml
</syntaxhighlight>直接复制粘贴以下内容(集成了 NEKO 和 Caddy):
</syntaxhighlight>直接复制粘贴以下内容(集成了 NEKO 和 Caddy):


修改提示: 请务必将 your_secure_password 和 admin_password 修改为复杂密码。<syntaxhighlight lang="abap">
提示: 请务必将 '''your_secure_password''' '''admin_password''' 修改为复杂密码。<syntaxhighlight lang="abap">
version: "3.4"
version: "3.4"
services:
services:
第65行: 第62行:
     shm_size: "1gb"
     shm_size: "1gb"
     ports:
     ports:
       - "52000-52100:52000-52100/udp" # WebRTC UDP 端口
      - "8080:8080"  # Web 访问端口
       - "52000-52100:52000-52100/udp" # WebRTC 需要的 UDP 端口范围
     environment:
     environment:
       # 【针对 1G 内存优化】分辨率设为 720P
       # 【针对 1G 内存优化】分辨率设为 720P,显著降低 CPU 和内存压力
      # 如果你是 2G 内存以上机器,可改为 1920x1080@30
       - NEKO_SCREEN=1280x720@30
       - NEKO_SCREEN=1280x720@30
       - NEKO_PASSWORD=your_secure_password  # 【重要】普通用户密码
       - NEKO_PASSWORD=your_secure_password  # 【重要】普通用户密码(用于观看和操作)
       - NEKO_PASSWORD_ADMIN=admin_password  # 【重要】管理员密码
       - NEKO_PASSWORD_ADMIN=admin_password  # 【重要】管理员密码(拥有踢人、强制抢夺控制权等权限)
       - NEKO_EPR=52000-52100
       - NEKO_EPR=52000-52100
       - NEKO_ICELITE=1
       - NEKO_ICELITE=1
第76行: 第75行:
     cap_add:
     cap_add:
       - SYS_ADMIN
       - SYS_ADMIN
</syntaxhighlight>按下 <code>Esc</code> 键,输入 <code>:wq</code> 保存并退出。


  caddy:
==== 5. 启动服务 ====
    image: caddy:alpine
    restart: always
    ports:
      - "443:443"
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile
    depends_on:
      - neko
</syntaxhighlight>保存退出(Esc -> :wq)。
 
==== 4. 启动服务 ====
执行以下命令启动所有容器:<syntaxhighlight lang="abap">
执行以下命令启动所有容器:<syntaxhighlight lang="abap">
docker compose up -d
docker compose up -d
</syntaxhighlight>
</syntaxhighlight>
=== 三、配置域名与 HTTPS (使用 Nginx Proxy Manager) ===
直接使用 IP+端口访问(HTTP)存在两个问题:
'''1.安全性低:''' 密码明文传输,容易被拦截。
'''2.功能受限:''' 浏览器的'''剪贴板共享'''和'''麦克风权限'''通常要求必须在 '''HTTPS''' 环境下才能正常工作。
因此,强烈建议使用 '''Nginx Proxy Manager (NPM)''' 配置反向代理和 SSL 证书。
==== 1.准备工作 ====
* 确保你已经安装了 Nginx Proxy Manager([[在搬瓦工上部署 NEKO,打造多人同步的“云浏览器”|参考教程]])。
* 将你的域名(例如 <code>neko.yourdomain.com</code>)解析到搬瓦工 VPS 的 IP 地址。
==== 2.配置步骤 ====
# '''登录 NPM 后台''',点击 Dashboard 上的 '''Proxy Hosts''' -> '''Add Proxy Host'''。
# '''配置 Details (基本信息):'''
#* '''Domain Names:''' 填写你的域名 <code>neko.yourdomain.com</code>
#* '''Scheme:''' 保持 <code>http</code>
#* '''Forward Hostname / IP:''' 填写 <code>127.0.0.1</code> (因为 NEKO 和 NPM 都在同一台 VPS 上)
#* '''Forward Port:''' 填写 <code>8080</code>
#* '''Websockets Support:''' '''【关键】必须勾选此项''',否则画面无法实时同步。
#* '''Block Common Exploits:''' '''勾选此项'''。
# '''配置 SSL (HTTPS证书):'''
#* 点击 '''SSL''' 选项卡。
#* '''SSL Certificate:''' 选择 <code>Request a new SSL Certificate</code>。
#* '''Force SSL:''' '''务必勾选''',强制使用 HTTPS 访问。
#* '''Email Address:''' 填写你的邮箱(可以随意填写)。
#* '''I Agree:''' 勾选同意协议。
# '''保存并测试:'''
#* 点击 '''Save''' 按钮。等待几秒钟,证书申请成功后,列表状态会变为 <code>Online</code>。
#* 现在,在浏览器输入 <code><nowiki>https://neko.yourdomain.com</nowiki></code>,你会看到浏览器地址栏有“小锁”图标。


=== 四、如何使用与访问 ===
=== 四、如何使用与访问 ===


==== 1. 通过 HTTPS 访问(IP 直连) ====
==== 1. 访问域名 ====
在浏览器输入:<nowiki>https://你的VPSIP</nowiki>
在浏览器输入你的域名[https://yourdomain.com https://neko.yourdomain.com]


==== 2. 处理“不安全”警告 ====
==== 2.登录说明 ====
由于我们使用的IP 自签名证书,浏览器(如 Chrome/Edge)会弹出一个红色警告页面提示“您连接不是私密连接”
'''Username:''' 是一个显示昵称不需要填写系统特定用户名。你可以随意填写,例如 "Boss", "Guest"。这主要用于在右侧列表区分当前房间里有谁


解决方法: 点击页面上“高级” (Advanced) -> “继续前往...” (Proceed to...)
'''Password:''' 填写你在 docker-compose.yml 中设置密码


注:这只是因为证书是自己签发的不代表传输不加密。了剪贴板功能,这是必须的妥协
如果你输入 NEKO_PASSWORD会'''作普通用户'''进入


==== 3. 登录 ====
果你输入  NEKO_PASSWORD_ADMIN,会'''作为管理员'''进入
Username: 随意填写昵称(User1)


Password: 填写你配置文件里设置的密码。
==== 3.开启操作功能 ====
 
图示序号2部分点击键盘图标,则可以开启操作功能,正常使用浏览器。
下是登录并开启操作功能的图示:


[[File:Neko登录并开启.png|900x900px]]
[[File:Neko登录并开启.png|900x900px]]


=== 五、注意事项 ===
=== 五、注意事项 ===
'''1.控制标签页数量:''' 对于 1GB 内存的机器,建议同时打开的标签页不要超过 3-5 个。用完及时关闭,避免卡死。


==== 1.小内存的VPS注意: ====
'''2.不要登录个人敏感账号:''' NEKO 是一个共享环境。虽然有密码保护,但建议将其为“公共网吧电脑”,使用隐私式浏览或用完后登出账号
不要打开太多标签页。
 
如果浏览器卡死,可以在 SSH 里执行 docker compose restart neko 快速复活
 
==== 2.关于带宽: ====
搬瓦工 CN2 GIA 线路虽然延迟低,但视频流非常吃带宽。如果画面通常是网络拥堵


720P 分辨率下单人使用大约占用 2-4Mbps 带宽。
'''3.带宽消耗:''' NEKO 本质是实时视频流。如果多人同时在线会消耗较多 VPS 带宽。搬瓦工 E-Commerce 系列带宽通很大(2.5Gbps),足以支撑几人同时流畅观看。
[[Category:500 见应用指南 — Application Guides]]

2026年2月18日 (三) 18:25的版本

在日常工作和生活中,我们经常遇到以下两个棘手的场景:

1.向零基础客户/朋友展示国际资源: 你需要向客户演示一个国外的网站,或者发一个 YouTube 视频给朋友看。但对方不懂技术,也不会安装代理软件(VPN),导致沟通受阻。

2.团队异地协同演示: 你需要和异地的同事或客户一起浏览同一个网页,进行实时讲解。传统的“屏幕共享”画质差、延迟高,且对方无法进行交互操作。

今天,我们将利用搬瓦工 VPS 的 海外网络环境CN2 GIA 低延迟 优势,部署一个运行在 Docker 里的“云端浏览器”(NEKO )。

这套方案的优势在于: 对方无需安装任何软件,只需在自己的浏览器里打开你发的链接,就能像操作本地电脑一样,访问国际互联网,且你们看到的画面是毫秒级同步的。

一、核心优势与原理

无需翻墙: 浏览器实际上是运行在搬瓦工 VPS 上的,你的本地浏览器只是在接收“视频流”。因此,访客端不需要任何代理工具。

多人同屏: 支持多人同时进入房间。A 移动鼠标,B 能立刻看到;B 输入网址,A 能立刻跳转。非常适合教学和演示。

低配置要求: 本地电脑再卡也没关系,网页加载速度取决于 VPS 的性能(搬瓦工 GIA 线路加载极快)。

二、环境准备与配置要求

由于浏览器是“吃内存大户”,而在本教程中我们主要针对 搬瓦工 E-Commerce 1GB 内存 的入门款进行优化,因此请务必关注以下要求:

1.服务器推荐: 搬瓦工 E-Commerce 或 CN2 GIA 系列(低延迟是鼠标操作跟手的关键)。

2.系统要求: Debian 12

3.内存要求:最低 1GB 内存,推荐配置 2GB 以上。

4.进阶要求:安装 Nginx Proxy Manager ,参考教程

三、部署 Docker 和 NEKO

我们将部署资源占用相对较小的 Firefox 版本,并针对 1G 内存进行了参数调优,本部分将一并完成 Docker 环境的安装。

1.SSH 连接与基础工具安装

使用 SSH 工具连接到您的搬瓦工服务器(推荐使用 Xshell 等工具,如果你是个人或家庭使用,可以下载 Xshell:下载链接),

然后执行下方命令安装必要的工具。

apt-get install wget curl vim sudo unzip -y

为了优化编辑体验,执行以下命令,防止后期使用 vi 编辑时出现剪贴板或格式报错:

echo set clipboard=unnamed >> ~/.vimrc

2.安装并启动Docker

执行下方命令安装 Docker,安装过程预计耗时数十秒。

wget -qO- get.docker.com | bash

Docker 安装完成后,执行以下命令启动 Docker 服务并设置开机自启:

systemctl start docker
systemctl enable docker

3. 创建部署目录

连接 SSH,执行以下命令:

mkdir -p /root/neko && cd /root/neko

4. 创建 Docker Compose 配置文件

vim docker-compose.yml

直接复制粘贴以下内容(集成了 NEKO 和 Caddy): 提示: 请务必将 your_secure_passwordadmin_password 修改为复杂密码。

version: "3.4"
services:
  neko:
    image: m1k1o/neko:firefox
    restart: always
    # 针对 1G 内存优化将共享内存设为 1gb配合 Swap 使用
    shm_size: "1gb"
    ports:
      - "8080:8080"  # Web 访问端口
      - "52000-52100:52000-52100/udp" # WebRTC 需要的 UDP 端口范围
    environment:
      # 针对 1G 内存优化分辨率设为 720P显著降低 CPU 和内存压力
      # 如果你是 2G 内存以上机器可改为 1920x1080@30
      - NEKO_SCREEN=1280x720@30
      - NEKO_PASSWORD=your_secure_password  # 重要普通用户密码用于观看和操作
      - NEKO_PASSWORD_ADMIN=admin_password  # 重要管理员密码拥有踢人强制抢夺控制权等权限
      - NEKO_EPR=52000-52100
      - NEKO_ICELITE=1
      - NEKO_NAT_1_2_3_4=127.0.0.1 # 这里不需要改程序会自动识别公网IP
    cap_add:
      - SYS_ADMIN

按下 Esc 键,输入 :wq 保存并退出。

5. 启动服务

执行以下命令启动所有容器:

docker compose up -d

三、配置域名与 HTTPS (使用 Nginx Proxy Manager)

直接使用 IP+端口访问(HTTP)存在两个问题:

1.安全性低: 密码明文传输,容易被拦截。

2.功能受限: 浏览器的剪贴板共享麦克风权限通常要求必须在 HTTPS 环境下才能正常工作。

因此,强烈建议使用 Nginx Proxy Manager (NPM) 配置反向代理和 SSL 证书。

1.准备工作

  • 确保你已经安装了 Nginx Proxy Manager(参考教程)。
  • 将你的域名(例如 neko.yourdomain.com)解析到搬瓦工 VPS 的 IP 地址。

2.配置步骤

  1. 登录 NPM 后台,点击 Dashboard 上的 Proxy Hosts -> Add Proxy Host
  2. 配置 Details (基本信息):
    • Domain Names: 填写你的域名 neko.yourdomain.com
    • Scheme: 保持 http
    • Forward Hostname / IP: 填写 127.0.0.1 (因为 NEKO 和 NPM 都在同一台 VPS 上)
    • Forward Port: 填写 8080
    • Websockets Support: 【关键】必须勾选此项,否则画面无法实时同步。
    • Block Common Exploits: 勾选此项
  3. 配置 SSL (HTTPS证书):
    • 点击 SSL 选项卡。
    • SSL Certificate: 选择 Request a new SSL Certificate
    • Force SSL: 务必勾选,强制使用 HTTPS 访问。
    • Email Address: 填写你的邮箱(可以随意填写)。
    • I Agree: 勾选同意协议。
  4. 保存并测试:
    • 点击 Save 按钮。等待几秒钟,证书申请成功后,列表状态会变为 Online
    • 现在,在浏览器输入 https://neko.yourdomain.com,你会看到浏览器地址栏有“小锁”图标。

四、如何使用与访问

1. 访问域名

在浏览器输入你的域名:https://neko.yourdomain.com

2.登录说明

Username: 这是一个显示昵称,不需要填写系统特定的用户名。你可以随意填写,例如 "Boss", "Guest"。这主要用于在右侧列表区分当前房间里有谁。

Password: 填写你在 docker-compose.yml 中设置的密码。

如果你输入 NEKO_PASSWORD,会作为普通用户进入。

如果你输入 NEKO_PASSWORD_ADMIN,会作为管理员进入。

3.开启操作功能

在图示序号2部分点击键盘图标,则可以开启操作功能,正常使用浏览器。

五、注意事项

1.控制标签页数量: 对于 1GB 内存的机器,建议同时打开的标签页不要超过 3-5 个。用完及时关闭,避免卡死。

2.不要登录个人敏感账号: NEKO 是一个共享环境。虽然有密码保护,但建议将其视为“公共网吧电脑”,使用隐私模式浏览,或用完后登出账号。

3.带宽消耗: NEKO 本质是实时视频流。如果多人同时在线,会消耗较多 VPS 带宽。搬瓦工 E-Commerce 系列带宽通常很大(2.5Gbps),足以支撑几人同时流畅观看。