Docker 协作部署

多人协作需要 Docker 版本;明确前端、协作服务和持久化之间的关系。

本页内容

多人协作需要部署 Docker 版本。 npm 编辑器组件提供接入能力;文档站是静态说明站。把文档站部署到 Cloudflare,不会获得协作后端。

部署前先分清三个部分

部分 运行在哪里 负责什么
文档网站 Cloudflare Pages 等静态托管 介绍功能、提供教程与 API 文档
你的业务应用 浏览器及宿主业务后端 登录、编辑器页面、文档入口、模型和文件服务
Docker 协作服务 你的服务器或容器环境 实时同步、命令确认、协作权限和持久化,具体依交付版本

浏览器通过 HTTPS 打开业务应用,再通过 WSS 连接已部署的协作服务。文档站不参与这条数据链路。

部署步骤

  1. 准备对应版本的 Docker 交付包。 使用实际发布的镜像、Compose 文件和配置说明,确认它支持你要接入的编辑器及协议版本。
  2. 配置访问与身份。 准备服务域名、HTTPS/WSS、鉴权方式、文档权限和用户身份。开发示例里的 dev-token 不能直接用作生产配置。
  3. 配置持久化。 按交付包说明挂载数据目录或连接数据库,单独配置附件存储;容器重启后应能恢复文档。
  4. 连接前端。 为同一文档提供一致的业务文档 ID,为每个客户端提供唯一实例 ID,并接入相应的 provider 或协作客户端。
  5. 用两名用户验证。 测试同一文档的实时编辑、断线重连、权限限制、撤销,以及重启服务后的数据恢复。

镜像地址、版本、端口和环境变量以对应的 Docker 交付包为准。本页提供部署与接入流程,暂未收录可直接执行的统一 Compose 配置;拿到部署包后按实际参数执行,再使用下方资料完成前端接线与验收。

四类编辑器的接入区别

编辑器 前端接点 接入时重点确认
Word collaborationProvider provider 的身份、权限、操作同步和远端光标;见字体与扩展服务
Excel collaboration + submitCommand Yjs 数据同步之外,还要有服务端权威命令的 ack/reject;见协作接入参考
PPT 当前源码中的协作客户端 需要匹配实际 Docker 交付版本,不能套用 Excel 的配置结构;AI 与协作组合暂不支持
富文本 Yjs 文档、provider、用户信息 协作初始化只执行一次,避免每个用户重复写入初始内容;见协作接入参考

这些接点不互相兼容。普通 Yjs 广播能同步数据,并不等于实现了 Excel 的服务端语义命令或所有编辑器的权限检查。

上线前逐项验证

  • 两名不同用户打开同一文档,看到相同内容;不同文档之间互不串数据。
  • 一个用户修改后,另一端收到同步;服务端拒绝的命令能提示或回滚。
  • 临时断网后重连,未确认修改和已确认内容有明确状态。
  • 只读用户无法绕过服务端权限写入,文件和附件权限也受检查。
  • 重启容器后仍能加载已保存内容;备份能够恢复。
  • AI 开启时,验证当前编辑器是否支持该协作组合;不能用整篇替换绕过原子提交。

常见误区

“两端能看到文字变化,算接好了?” 还不够。需要确认服务端身份、命令拒绝、持久化和重连行为。

“我已经把网站挂到了 Cloudflare,可以在里面启动 Docker 吗?” 本项目生成的是静态页面,不运行容器或协作服务。Docker 部署是另一项服务部署。

“本地保存能代替协作保存吗?” localStorage 只属于当前浏览器,不是团队共享存储。协作时应遵循对应服务的数据和保存协议。

内容依据组件公开文档 · 2026-10-25常见问题
输入关键词开始搜索