前言:一直用有道云笔记,随着笔记越多,每次搜索跟打开都感觉没那么顺畅。再考虑到数据安全问题,想着有没私有化部署的笔记,于是开始探索私有化部署笔记。
- 为知笔记:比较早之前,家里的NAS部署过为知笔记,但感觉不是自己想要的,一直没有用起来
- siyuan:听说过思源,服务部署了一个试试,发现服务端其实就是一个网页客户端,没办法与本地客户端同步。本地 webdav 同步也需要登录在线账号
- blossom: 可私有化部署,看着页面不错,但MacBook 客户端只支持arm版,放弃
- obsidian:本地存储,同步则需要使用在线服务,也有人使用云盘备份本地仓库文件
- trilium:私有化部署后,可以访问网页或本地客户端,客户端本地也有存储,同时可以同步服务器,采用sqlite数据库存储,备份则是整库备份,另外没有移动端。
个人需求:本地有存储,可以同步到服务器,有win和MacOS客户端
刚好trilium能满足我的需求,于是开干。
环境:
centos 7
docker
docker部署
在/root/docker_root/ 创建文件夹 trilium
然后在trilium下 创建文件夹 data
注:文件目录根据个人实际情况去创建,这里只是做一个示例。
给trilium文件夹及子目录添加用户权限
chown -R 1000:1000 /root/docker_root/trilium
注:1000是我一个普通用户的id
可以通过命令查看你的普通用户id: id [你的普通用户名]
# 拉取最新镜像
docker pull nriver/trilium-cn
# 运行
docker run -d --name trilium -u 1000:1000 -v /root/docker_root/trilium/data:/trilium-data -e TRILIUM_DATA_DIR=/trilium-data -p 56677:8080 nriver/trilium-cn
说明:docker 运行用户也是使用id为1000的用户,这就是上面为啥要配用户权限。当然,也可以直接使用root运行,不用 -u
参数。
由于数据目录指定为 TRILIUM_DATA_DIR=/trilium-data
,所以把本地data目录挂载给 /trilium-data
至于端口 -p 56677:8080
,根据自己喜欢
nriver/trilium-cn
这个镜像非官方的,是有人做了汉化后编译版本
此时可以访问一下:
http://{ip}:56677/
第一次会有设置,3个选择,我选择第一个,之后会让你配置密码,密码要记住!!
配置完毕,从其他机子访问时,会让你输入密码
本地客户端配置
下载客户端之后,打开时,同样会弹出三种选择
客户端是英文版的,这时我选择第三个,即我有一个Trilium服务器,我想与它同步数据
服务器地址,填上部署trilium的服务器地址即端口,并输入配置
密码则是填上前面配置的密码
完成配置后,就会把服务器的笔记同步到本地了,同时本地也会存一份
本地数据默认存储的位置:
Windows:C:\Users[user]\AppData\Roaming\trilium-data
Mac:/Users/[user]/Library/Application Support/trilium-data
如果你想迁移数据存储位置,以Windows为例:
1.退出trilium客户端
2.将 C:\Users\[user]\AppData\Roaming\trilium-data
,拷贝到你想要存储的位置,例如 D:\trilium\trilium-data
3.编辑系统环境变量,新建用户变量,变量名 TRILIUM_DATA_DIR
,变量值为你想要存储的位置,最后确定保存即可
4.重新打开软件,如果能正常显示笔记,说明数据目录迁移成功
点击左上角,选择About Trilium notes
,最后一行 Data directory
显示就是数据目录
同步服务器
在写笔记前,可以点击同步按钮,把服务器的笔记同步下来
最后的话
笔记软件越来越多,我们重点考虑数据安全,不同软件有不同优缺点,根据每个人的使用习惯,选择合适自己才是关键。后面将开始使用Trilium笔记了,做知识库记录及备忘为主