由于平时需要处理大量结构复杂的内容,并且各内容板块间还存在相互交叉的引用关系,因此长久以来我一直在寻找一款既能满足需求,又简洁易用的内容管理工具。印象笔记或 OneNote 等笔记类服务似乎最为常见,但一来,将所有的私人内容存储在商业公司的服务器上总会让我缺乏安全感;二来这些软件要么不够轻便,要么对重要功能额外收费,因此一直都无法让我十分满意。

两年前,我接触到一款叫做 Notion 的跨平台软件,无论是功能还是界面都令我十分满意,但它的价格并不便宜,我毕竟不是靠内容吃饭的职业创作者,无论如何也不愿为一款笔记软件搞月付。另外,Notion 仍然无法实现在牢牢掌控内容数据的同时实现便捷的多端同步,这也是一个不大不小的遗憾。

直到今天,偶然在少数派这篇文章的介绍下了解到一个叫 Trilium 的 Github 开源项目,几乎完美地满足我的所有需求。首先,它是一个开源项目,支持自建笔记服务器,可以让我在牢牢掌控笔记控制权的同时实现多端同步;其次,它界面简洁,非常轻量,甚至可以丢掉客户端,完全实现网页端访问;最后,它完全免费,这点非常重要。

自从买了威联通 NAS 后,我越来越倾向于将自己的各种数据保存在 NAS 上,再通过各类开源软件实现多端同步。这样既能保证数据安全和个人隐私,又能方便地管理自己的文件和数据。用几千元的成本和少许的电费换得对个人数据的完全掌控,我认为是值得的。因此,在意识到 Trilium 提供开源的服务端软件后,我立刻开始本地服务器的搭建工作。

Trilium 的官方文档中提供了通过 Docker 安装 Trilium Server 的具体方式。但由于文档为全英文,且只提供了 SSH 命令安装的方式,一些新手阅读起来可能有些困难,因此本文将以图形化的方式简单陈述 Trilium Server 的安装方式。

首先,在你的 NAS 上安装 Docker 套件(在威联通的 QTS 中叫做 Container Station)并打开它。

Container Station 介绍页面

进入“创建”,并在搜索框中搜索 Trilium,找到 zadam/trilium,点击右侧的“安装”。

在弹出的创建窗口中,点选“高级设置”,首先在“网络”选项卡中设置 Trilium 的端口转发,trilium 的默认 web 界面默认端口是 8080,因此 Container 的端口必须写 8080,而映射出的主机端口则可以根据自身需求填写。为了记忆方便,我倾向于内外端口一致的设置,即主机端口同样设置成 8080,但如果你的 NAS 的 8080 端口已被其他程序占用,请填写其他端口。

接着,在“共享文件夹”选项卡中,将一个共享文件夹挂在到 Trilium 的容器中。容器中的挂载路径必须写 /trilium-data,而本机共享文件夹则可根据自身需求进行选择,注意挂载共享文件夹的权限必须为读取和写入均有。

上述设置完成后,点击“创建”按钮,系统会自动下载镜像文件并根据你的配置安装容器。容器安装完成后,便可通过在浏览器中输入 NAS IP/端口的方式访问 Trilium 的 web 界面。初次使用 Trilium 时要进行一些简单的初始化设置,例如创建用户名和密码等。虽然界面只有英文,但非常简单,这里不做赘述。

至此,我们便搭建完成了自己的笔记服务器。关于 Trilium 的具体使用方法,可自行摸索或搜索,总体来说,这款工具的使用门槛并不高。我的这篇文章就是全称用 Trilium 撰写的。Trilium 支持 Marddown 语法,因此对我而言几乎没有任何使用门槛。另外,Trilium 的 web 界面支持移动端布局,只要做好 DDNS 和路由器端口映射,便可在任何地方随时随地访问自己的笔记,无论用电脑还是手机。