开源在线协作白板 WBO,NAS 上 Docker 一条编排部署,内网穿透远程多人同时画
作者
小编
发布时间

项目介绍
WBO(仓库名 whitebophir)是一个开源的在线协作白板。打开就能画,铅笔、直线、矩形、椭圆、文本、橡皮、移动、网格、缩放都在左边一条工具栏上,一共十来个工具。
它最关键的一点是:白板的地址就是入口。你把链接发给谁,谁点开就能进同一块板子一起画,两边的笔画实时同步,人走了内容也还在,都存在服务端。整个过程不需要注册账号、不需要装客户端。
装在自己的 NAS 上,画的东西就都在自己盘里 —— 上课讲题、给同事比划一个流程、跟家里人一起排个日程表,都用得上。
项目地址:点我跳转
部署安装
白板这东西不发给别人就没有意义,所以「能从外面打开」不是加分项,是前提。而它装在 NAS 上默认只有家里的网能开。我家是移动宽带,没有公网 IP,所以用 帕斯内网穿透 把它开放到公网,飞牛的应用中心里就能直接装到插件,不用另外找工具。下面这套是我自己在飞牛 NAS 上跑通的。
第一步:准备编排文件
下面这段整段贴进去就行。
1services:2 wbo:3 image: lovasoa/wbo:latest4 container_name: wbo5 ports:6 # 左边 3029 是 NAS 上的端口,右边 80 是容器里的,别写反7 - "3029:80"8 volumes:9 # 画的东西都存在这个目录里,跟着 NAS 一起备份就行10 - ./boards:/opt/app/server-data11 restart: unless-stopped
要认的就三处。
一是镜像 lovasoa/wbo:latest —— 上游文档给的就是 latest,跟着它走就行。
二是端口 3029:80。冒号左边 3029 是 NAS 上对外的端口,可以换成你自己没被占用的;右边的 80 是容器里的端口,不要改。这个 3029 待会儿建隧道要填。
三是 ./boards:/opt/app/server-data。白板画的内容都落在这个 boards 目录里,跟着 NAS 一起备份就行。上游用的也是这种绑定挂载,不是具名卷,删起来方便。
第二步:在飞牛上建 Compose 项目
打开 Docker 这个应用,切到上面的 Compose 标签,点新增项目。项目名就填 wbo。
路径这一栏点开,在自己那个文件夹里新建一个空文件夹,然后选中它,点确认。
来源选「创建 docker-compose.yml」,把刚才那段整段贴进来。勾上「创建后立即启动」,再点创建。会弹出一个构建日志的小窗,跑完关掉就行。容器很轻,实测常驻内存只有三十几 MB,二十秒上下端口就通了。
第三步:用内网穿透开放到公网
PassNAT 就在飞牛的应用中心里,搜一下就有,装上打开它,账号登一次就行。
在插件里点创建隧道:名字随便起;传输协议选 TCP;本地地址留默认的 127.0.0.1 不用动;本地端口填上面那个 3029。
点开这条隧道的详情,把电源按一下,等它转成运行中。面板上那一行就是分给你的公网地址 —— 之后开白板、发链接,用的都是它。
怎么用
用公网地址打开,界面自己就是中文。首页上有三种板子:公共白板是所有人都能进的,随便画;「创建私人白板」会给你一块随机名字的板子,只有拿到链接的人能进;第三种是可以自己起名字的私有板,地址就是 /boards/ 加上你起的名字,好记也好发。
起个名字点「打开」,一块空白板子就出来了。左边挑支铅笔,在上面随手画两笔。
然后把这个地址发给另一个人 —— 他那边打开,看到的就是你刚画的;你这边接着画,他那边跟着动。人不在一块儿,也能对着同一块板子比划。
一些使用上的细节
⚠ 板子的私密性靠的是「链接猜不到」,不是账号密码。所以真要放不方便给人看的东西,名字就别起得太好猜;不用的时候也可以去 PassNAT 插件里把隧道的电源关掉,公网入口就没了。
画的内容都在项目文件夹的 boards 目录里。想搬到另一台机器,把整个文件夹拷过去、用同样的编排起一个容器,板子都还在。