
前言远程会议开到一半需要共同修订一份文档或代码提纲这种场景估计不少人经历过。方案来来去去就那几个发邮件等反馈、微信来回传文件、用腾讯文档但要登录账号……每种都有各自的鸡肋之处。后来我自己琢磨出一套更顺手的方案用 Rustpad 搭一个私有协作编辑平台配合 cpolar 解决网络访问问题整套流程搭起来十分钟不到之后每次用就是秒开。Rustpad 这个工具本身挺小众但上手之后发现意外顺手。它是一个基于 Rust 编写的轻量级实时协作编辑器后端内存占用极低单核 CPU 加 512MB 内存就能跑起来多人同时编辑时文本实时同步光标位置也能看到。关键是它不走账号体系分享一个链接出去对方打开就能编辑不用注册不用登录对临时性协作场景特别友好。汉化版把界面翻译成了中文对中文用户更友好了一些。整套部署用 Docker 完成三条命令拉起服务不需要编译环境也不需要装数据库。用 cpolar 做内网穿透把本地端口映射到公网异地同事直接通过浏览器访问同一个链接就能加入协作。网络打通之后每次开会不再需要提前把文档传来传去改完的内容实时可见效率提升是能感受到的那种。1.什么是Rustpad核心特性实时协作Real-time Collaboration多人可同时编辑同一文档光标位置、文本内容实时同步类似Google Docs或腾讯文档但更轻量。零账户系统No Signup Required用户只需分享一个链接访客打开即可编辑无需登录或注册。端到端加密可选支持通过URL中的密钥实现客户端加密E2EE服务器无法读取文档内容保障隐私。基于Rust构建性能优异后端使用Rust语言编写内存安全、高并发、低资源占用单核CPU 512MB内存即可流畅运行。支持Markdown与代码高亮编辑区支持Markdown语法渲染代码块自动高亮适合技术团队写文档、做笔记。自托管Self-hosted所有数据存储在你自己的服务器上不依赖第三方云服务完全掌控数据主权。无数据库依赖默认将文档临时保存在内存中重启后丢失也支持持久化到本地文件通过社区修改版或插件。典型使用场景团队快速头脑风暴 / 会议记录编程结对时共享代码片段教师与学生共享课堂笔记临时起草协议、清单、待办事项隐私敏感场景下的安全协作技术栈简览组件技术后端Rust Actix WebWebSocket 实现实时同步前端HTML/CSS/JavaScript无框架极简设计部署单二进制文件 or Docker 容器协议WebSocket CRDT冲突-free replicated data type算法为什么选择Rustpad开源免费MIT 许可证轻量快速启动快、响应快隐私可控自托管 可选加密极简设计无冗余功能专注写作2.前提条件2.1ssh远程连接到极空间开启【SSH 服务】使用终端Windows PowerShell / Mac Terminal登录sshrootIP2.2验证docker是否开启使用命令docker-vsystemctl status-v3.安装Rustpad首先创建一下安装的目录并进入到该目录sudomkdir-p/docker/rustpadcd/docker/rustpad创建并编辑docker-compose.yml文件#version: 3.9name: rustpad services: rustpad: container_name: rustpad image: swr.cn-north-4.myhuaweicloud.com/firfe/rustpad:2025.08.28 network_mode: bridge restart: always cpus:1mem_limit: 512m logging: options: max-size: 1m max-file:3ports: -3030:3030启动容器docker-composeup-d也可以使用docker run一键部署dockerrun-d\--namerustpad\--networkbridge\--restartalways\--cpus1--memory512m\--log-opt max-size1m\--log-opt max-file3\-p3030:3030\swr.cn-north-4.myhuaweicloud.com/firfe/rustpad:2025.08.28部署完成后在浏览器中输入http://极空间IP:3030就能看到rustpad的界面4.使用Rustpad支持多种语言格式在Rustpad中文档名称是以6位随机码来鉴别的不同的随机码对应不同的文档内容。可以更新用户名称左侧的Share Link就是我们可以分享使用的短链接分享给其它人就可以加入共同进行在线文档编辑。你们正在远程进行视频会议需要实时协作编辑一份文档或白板内容。你已经在本地启动了一个RustPad实例——这是一个基于Rust编写的轻量级协同编辑工具支持多人通过WebSocket实时同步操作。然而问题来了你和同事并不在同一个局域网内对方无法直接通过 http://你的IP:3000访问你本地运行的服务。由于大多数家庭或办公网络都处于NAT之后且没有公网IP常规方式根本无法建立连接。这时候cpolar就派上用场了跟我一起来部署cpolar吧5.安装cpolar实现随时随地开发5.1 什么是cpolarcpolar是一款安全高效的内网穿透工具无需公网IP或复杂配置只需一条命令即可将本地服务器、Web服务或任意端口映射到公网让你随时随地远程访问内网应用特别适合开发调试、远程运维和应急部署等场景。5.2 部署cpolarcpolar可以将你本地电脑中的服务如SSH、Web、数据库映射到公网。即使你在家里或外出时也可以通过公网地址连接回本地运行的开发环境。❤️以下是安装cpolar步骤使用一键脚本安装命令sudocurlhttps://get.cpolar.sh|sh安装完成后执行下方命令查看cpolar服务状态如图所示即为正常启动sudosystemctl status cpolarCpolar安装和成功启动服务后在浏览器上输入虚拟机主机IP加9200端口即:【http://ip:9200】访问Cpolar管理界面使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可打开浏览器访问本地9200端口使用cpolar账户密码登录即可,登录后即可对隧道进行管理。6.配置公网地址登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道隧道名称可自定义本例使用了:rustpad注意不要与已有的隧道名称重复协议http本地地址3030域名类型随机域名地区选择China Top打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了公网地址接下来就可以在其他电脑或者移动端设备异地)上使用地址访问。访问成功。7.保留固定公网地址使用cpolar为其配置二级子域名该地址为固定地址不会随机变化。点击左侧的预留选择保留二级子域名地区选择china Top然后设置一个二级子域名名称我使用的是rustpad大家可以自定义。填写备注信息点击保留。登录cpolar web UI管理界面点击左侧仪表盘的隧道管理——隧道列表找到所要配置的隧道点击右侧的编辑。修改隧道信息将保留成功的二级子域名配置到隧道中域名类型选择二级子域名Sub Domain填写保留成功的二级子域名地区: China Top点击更新更新完成后打开在线隧道列表此时可以看到随机的公网地址已经发生变化地址名称也变成了保留和固定的二级子域名名称。最后我们使用固定的公网地址在任意设备的浏览器中访问可以看到成功访问的页面这样一个永久不会变化的二级子域名公网网址即设置好了。总结回过头来说这套方案最核心的价值其实是私有和即时这两个点。不依赖第三方云服务文档存在自己服务器上数据主权在自己手里不需要账号体系链接发出去就能用临时协作场景特别适合。说白了它解决的不是文档编辑能力的问题而是协作发起成本的问题——很多时候工具不好用不是因为功能不够而是用起来的摩擦太大。轻量、开源、零门槛这才是 Rustpad 配合 cpolar 组合最准确的使用感受。