Docker快速部署 Rustpad,开启实时中文协作编辑

前言
在远程团队协作中,实时文档编辑往往是效率的关键环节。大多数人首先想到的都是 Google Docs 或企业内部的办公套件,但这些解决方案往往需要注册账号、绑定企业域名,甚至会产生额外的费用。我们今天聚焦的核心功能——*即时共享链接,无需账号即可多人共同编辑*——正是许多小团队、临时项目组以及教育现场最迫切需要的。
Rustpad 是一款基于 Rust 构建的轻量协作编辑器,默认提供英文界面且缺少中文本地化,使用体验打了折扣。社区推出的汉化版不仅完整翻译了 UI,还针对中文排版和输入习惯做了细致优化,让中文用户无需适应英文布局即可直接上手。
借助 Docker 的容器化特性,我们只需一行命令或一个 docker‑run 参数,即可在几秒钟内把这款功能完整、界面友好的协作编辑器部署到任意服务器上。随后配合内网穿透工具 cpolar,将本地 3030 端口映射到公网,即使团队成员分散在不同网络环境,也能通过一个固定的公网链接实时编辑同一文档,光标同步、代码高亮、Markdown 渲染全程无卡顿。
本文将围绕 *“一键部署并立即使用”* 这一功能展开,详细演示如何创建部署目录、编写 docker-compose.yml、启动容器,以及如何利用 cpolar 快速生成可共享的公网地址,帮助您在最短时间内搭建起私有的实时协作平台。

1.什么是Rustpad?
核心特性:
实时协作(Real-time Collaboration)
- 多人可同时编辑同一文档,光标位置、文本内容实时同步,类似Google Docs或腾讯文档,但更轻量。
零账户系统(No Signup Required)
- 用户只需分享一个链接,访客打开即可编辑,无需登录或注册。
端到端加密(可选)
- 支持通过URL中的密钥实现客户端加密(E2EE),服务器无法读取文档内容,保障隐私。
基于Rust构建,性能优异
- 后端使用Rust语言编写,内存安全、高并发、低资源占用,单核CPU + 512MB内存即可流畅运行。
支持Markdown与代码高亮
- 编辑区支持Markdown语法渲染,代码块自动高亮,适合技术团队写文档、做笔记。
自托管(Self-hosted)
- 所有数据存储在你自己的服务器上,不依赖第三方云服务,完全掌控数据主权。
无数据库依赖
- 默认将文档临时保存在内存中(重启后丢失),也支持持久化到本地文件(通过社区修改版或插件)。
典型使用场景:
- 团队快速头脑风暴 / 会议记录
- 编程结对时共享代码片段
- 教师与学生共享课堂笔记
- 临时起草协议、清单、待办事项
- 隐私敏感场景下的安全协作
技术栈简览:
| 组件 | 技术 |
|---|---|
| 后端 | Rust + Actix Web(WebSocket 实现实时同步) |
| 前端 | HTML/CSS/JavaScript(无框架,极简设计) |
| 部署 | 单二进制文件 or Docker 容器 |
| 协议 | WebSocket + CRDT(冲突-free replicated data type)算法 |
为什么选择Rustpad?
- 开源免费(MIT 许可证)
- 轻量快速(启动快、响应快)
- 隐私可控(自托管 + 可选加密)
- 极简设计(无冗余功能,专注写作)
2.前提条件
2.1ssh远程连接到极空间
- 开启【SSH 服务】
- 使用终端(Windows PowerShell / Mac Terminal)登录:
ssh root@IP

2.2验证docker是否开启
使用命令:
docker -v
systemctl status -v

3.安装Rustpad
首先创建一下安装的目录并进入到该目录:
sudo mkdir -p /docker/rustpad
cd /docker/rustpad
创建并编辑 docker-compose.yml文件:
#version: '3.9'
name: rustpad
services:
rustpad:
container_name: rustpad
image: swr.cn-north-4.myhuaweicloud.com/firfe/rustpad:2025.08.28
network_mode: bridge
restart: always
cpus: 1
mem_limit: 512m
logging:
options:
max-size: 1m
max-file: '3'
ports:
- 3030:3030
启动容器:
docker-compose up -d
也可以使用docker run一键部署:
docker run -d \
--name rustpad \
--network bridge \
--restart always \
--cpus 1 --memory 512m \
--log-opt max-size=1m \
--log-opt max-file=3 \
-p 3030: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 什么是cpolar?
cpolar是一款安全高效的内网穿透工具,无需公网IP或复杂配置,只需一条命令,即可将本地服务器、Web服务或任意端口映射到公网,让你随时随地远程访问内网应用,特别适合开发调试、远程运维和应急部署等场景。
5.2 部署cpolar
cpolar可以将你本地电脑中的服务(如SSH、Web、数据库)映射到公网。即使你在家里或外出时,也可以通过公网地址连接回本地运行的开发环境。
❤️以下是安装cpolar步骤:
使用一键脚本安装命令:
sudo curl https://get.cpolar.sh | sh

安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)
sudo systemctl status cpolar

Cpolar安装和成功启动服务后,在浏览器上输入虚拟机主机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
点击更新

更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

最后,我们使用固定的公网地址在任意设备的浏览器中访问,可以看到成功访问的页面,这样一个永久不会变化的二级子域名公网网址即设置好了。
总结
通过本文的步骤,您只需一次 Docker 拉取和容器启动,即可拥有功能完整、中文友好的 Rustpad 实时协作编辑器;随后通过 cpolar 的内网穿透,即可将本地编辑服务安全地公开为固定公网链接,支持跨地域团队即时共享文档、代码片段或白板。
整个过程无需账号注册、无需数据库依赖,所有数据均由您自行掌控,轻松实现高效、私密的远程协作。
5559592)]
最后,我们使用固定的公网地址在任意设备的浏览器中访问,可以看到成功访问的页面,这样一个永久不会变化的二级子域名公网网址即设置好了。
总结
通过本文的步骤,您只需一次 Docker 拉取和容器启动,即可拥有功能完整、中文友好的 Rustpad 实时协作编辑器;随后通过 cpolar 的内网穿透,即可将本地编辑服务安全地公开为固定公网链接,支持跨地域团队即时共享文档、代码片段或白板。
整个过程无需账号注册、无需数据库依赖,所有数据均由您自行掌控,轻松实现高效、私密的远程协作。
更多推荐


所有评论(0)