Focalboard 是一个可以本地部署的开源看板工具,它可以实现类似 Trello 和 Notion 的看板功能。适合个人及团队项目管理和组织工作。
相比同类型的“可本地部署的看板工具”(如 Taiga、Wekan),Focalboard 界面美观、更为轻量、也更易部署。
同时,它还提供了个人桌面版和个人服务器版(本地部署)两种版本。这很好地满足了两类人群对于看板工具的需求。
个人桌面版
如果只想在本机上给自己使用,可以直接到官网或者 App Store 下载桌面版。
下载完成后,由于是不联网的纯本地版本,没有账号功能也无需设置,直接打开应用就可以使用了。在左下角 Settings 中可以切换为中文。
如果使用了一段时间想迁移数据,整体可以导出为 .boardarchive
格式,单个看板支持导出为 .CSV
格式,比较通用。
部署个人服务器版
Focalboard 的个人桌面版本不带同步功能,分享功能也是只能以 localhost 链接形式进行分享。
如果你想跟团队里的其他同事一起使用,或者自己在多个设备上同步使用,我更推荐你搭建一个本地部署版本,可以选择部署在本地机器、服务器、NAS 上。个人服务器版本增加了账户功能,所有用户通过浏览器访问和使用。
接下来详细讲解一下,如何在群晖 NAS 上部署 Focalboard 个人看板服务。
通过 NAS 的 Docker 部署
在群晖 NAS 中打开 Container Manager(DSM 7.2 版本以下的系统中,应用名称是 Docker)。
在注册表界面,搜索 focalboard
,第一个 mattermost/focalboard
就是官方版本。
下载完毕后,在“映像”界面找到并点击运行,进入创建容器流程。这里你可以命名容器的名称和限制内存上限。
下一步,需要映射端口和映射存储空间。这里第一个的端口号是 NAS 的端口,第二个端口号是容器内部的端口号。8000 端口是 focalboard 的访问端口。
官方文档中没有提到如何持久化数据,如果你不配置存储空间映射,那么在重建容器的时候,数据就会丢失。
实际配置的时候,非常建议映射一个 /data
目录到本地,这样就可以把 SQLite 数据库存储到本地。在重新部署的时候,数据不会丢失。
官方还建议,在生产环境中建议配置 PostgreSQL 和 MySQL 来进一步增加可用性。但是官方并没有给出通过 Docker 部署 PostgreSQL 和 MySQL 的方法,需要通过原生安装的方式实现,稍显复杂。
在官方 Github 仓库的这个 Issue 中,有人提到了这个问题: How to edit the DB settings with a Docker container?,并且有人给出了“挂载配置文件” + Docker Compose 的方法来实现,值得一试。但目前为止还没有官方的解决方法。
好在如果是个人使用的话,使用 SQLite 就已经足够了。
配置完成后创建容器,等待片刻后,就可以进入 NAS IP:8000
( 如 192.168.1.188:8000
)来访问 Focalboard 了。
点击下方的 create an account 创建一个应用,就可以进入主页面。
Focalboard 桌面版和本地部署版的区别不大,不过本地部署版支持账户系统,这样可以在“人员字段”中分配到具体的人,也可以通过公网链接进行分享和权限管理。在不同设备、人员的界面中保持一致,更适合团队使用。
配置 HTTPS(可选)
配置 HTTPS 可以让服务在网络传输层面变得更安全,NAS 上也很容易配置。
在控制面板 - 登录门户 - 高级中,选择反向代理服务器。
在常规中,输入主机名为“可供外网访问的域名/IP”和“启用 HTTPS 的端口”。目的地就填写 localhost 和 8000。
然后在自定义标题中,新增一个 WebSocket,会自动添加两项配置。
保存后,就可以改用 https://域名:8001
访问 Focalboard 服务了。
最后讲讲 Focalboard 的差异点
先讲讲 Focalboard 的优点。
Focalboard 支持看板、表格、日历、画廊这四种视图,四种视图数据互通,并且支持常规的自定义字段、筛选、排序、按特定属性分组、搜索等功能。支持看板模板、支持卡片模板,其他看板相关的基础功能也很齐全,算是一个精简版的 Notion Database。
如果你还尝试过一些同类型的专业看板工具,比如国外的 Asana、Jira,国内的 PingCode、禅道 等等项目管理工具,你会发现其实它们的核心功能就是自定义字段 + 看板视图 + 表格视图 + 多人协作这几项。
这些工具差异化的地方在于依托的方法论不同。比如 Jira 和禅道更偏向于开发,会提供更细致的项目管理相关、Git、DevOps 的集成功能。这些都是锦上添花的功能,并不是看板的核心。你完全可以通过 Focalboard 或 Notion 等任意一款工具,通过自定义字段,实现类似的效果。剩下的就是 UI 界面易用度的区别。
Focalboard 在关于看板的关键功能上提炼的比较准确,没有做那些只针对特定领域的功能,把自定义字段 + 看板视图 + 表格视图 + 多人协作这几项做好,就已然足够。
Focalboard 已经完全可以满足日常使用,不过与其他商业工具相比,也暴露出一些小缺点。
细节方面,Focalboard 支持大部分常规自定义字段,但缺乏了一个“具体时间字段”以及相应的提醒功能,这个很多时候还挺有用的(而且由于“时间”属性的缺失,导入进来的数据也会缺失这部分信息)。开发团队表示这在计划中,但需要考虑时间范围、时区相关的复杂性。目前可以在 相关的 Issue 中进行讨论。
还有一点,从其他工具中导入数据稍显复杂。当你点击导入按钮时,Focalboard 提供了一些小工具,帮助你把现有项目从 Trello、Asana、Notion、Jira、Todoist 转换为它支持的 .boardarchive
格式,然后再进行导入。你可以在官方文档中找到详细说明,本文就不做展开了。
相比深耕 Database 数年的 Notion,Focalboard 也有一定的差距,比如不支持关联到其他看板,也不能关联查询(倒是和 Trello 类似,Trello 也是看板之间相互独立)。再比如缺少了列表和甘特图视图,对这甘特图有刚需的朋友可能需要评估其他工具了。
尽管有这些差异,但 Focalboard 100% 免费开源,不会因为奇奇怪怪的限制,让你用的不爽——不少面向公司的商业看板工具中,连自定义字段都是收费功能。
总之,如果你只是需要一个简单且通用的看板工具,并且希望 Local-first,那么本地部署 Focalboard 应该可以很好地满足你的需求。