0%

Unraid下自建思源笔记

思源笔记是一个开源的个人知识库管理工具,在其官网可以下载客户端软件,也可以注册账号后一次性购买、解锁通过S3或者webdav进行数据同步的功能。但是考虑到:

  • 需要多端使用,用web方式访问才是最方便的

  • 我决定用家里闲闲没事干的Unraid自建一个思源笔记服务。

安装思源笔记Docker版本

  1. 在Unraid的应用商店搜索siyuan并且安装
  2. 在弹出的配置界面,进行如下设置:
  • 打开右上角的Advanced View
  • Post Arguments中添加--accessAuthCode=登录密码 --workspace=/siyuan/workspace/,将登录密码替换为你自己的登录密码
  • 勾选Privileged
  • Web UI的端口不要变,否则在初始化的时候会无法打开页面
  • 修改Notes配置,点击右侧的EDIT,将Container Path修改为/siyuan/workspaceHost Path修改为/mnt/user/appdata/siyuan(这是Unraid Docker默认的数据路径),点击SAVE保存
  • 删除其他多余的配置,选择DONE。注意先不要点击APPLY启动,因为还需要进行下一步的配置
  1. 由于我们在上面的配置中,将Docker容器中的数据目录与Unraid的/mnt/user/appdata/siyuan目录进行了映射,所以需要在Unraid中创建该目录,并给与读写权限,否则会导致Docker无法正常启动。打开Unraid的终端,输入以下命令:
1
2
mkdir -p /mnt/user/appdata/siyuan
chown -R 1000:1000 /mnt/user/appdata/siyuan
  1. 回到Docker界面,点击思源笔记的容器图标,在弹出的菜单中启动容器。随后,再次点击容器图标,选择WebUI,即可打开思源笔记的页面。

备份思源笔记数据

思路很简单,通过Rclone将数据备份到云服务,并通过Unraid的定时任务进行定时备份。这里以备份到Cloudflare的R2为例,其他云服务的配置方法类似。

安装Rclone

  1. 在Unraid的应用商店搜索rclone并且安装
  2. 安装完成后,打开Unraid的终端,输入rclone version,如果显示版本号,则说明安装成功

配置Rclone

  1. 在Unraid的终端中继续输入rclone config,进入Rclone的配置流程
  2. 输入n,创建新的配置

  1. 输入配置名称,如cloudflare

  1. 输入数字选择存储类型,如R2就是S3类型,输入5

  1. 输入数字选择供应商,如Cloudflare就是6(Cloudflare R2 Storage)

  1. 选择获取Access Key和Secret Key的方式,这里选择1,即手动输入

  1. 分别输入Access Key和Secret Key,这里的Access Key就是Cloudflare的账号id,Secret Key就是Cloudflare的API Key,可以在Cloudflare的账号设置中找到

  1. 选择Region,这里选择1,因为Cloudflare的R2是自动的

  1. 输入Endpoint,格式是https://xxxxxx.r2.cloudflarestorage.com,可以从R2中Bucket的信息页面找到

  1. 直接回车,跳过进阶设置

  1. 输入y确认配置,再输入q退出配置

  2. 输入rclone lsd cloudflare:,查看是否能够列出Bucket列表,如果能够列出,则说明配置成功。其中cloudflare是配置名称,可以自行修改

使用Rclone备份数据

  1. 在Unraid应用商店搜索User Scripts并且安装

  1. 在Unraid的Settings中,选择User Scripts,点击Add New Script,输入脚本名称,如sync-siyuan,然后点击脚本左侧的齿轮按钮,在弹出的窗口中选择Edit Script

  1. 在弹出的编辑窗口中,输入以下内容,其中cloudflare:siyuan是Rclone的配置名称和R2中的bucket名称,可以自行修改
1
2
3
4
#!/bin/bash
echo "Syncing Siyuan Data..."
rclone sync /mnt/user/appdata/siyuan cloudflare:siyuan --progress --transfers 32 --checkers 64
echo "Syncing Done!"
  1. 点击SAVE CHANGES保存。
  2. User Scripts中,点击脚本右侧的RUN SCRIPT,即可手动运行脚本。可以在弹窗中看到日志。
  3. 选择最右侧的下拉菜单,将Scheduled Disabled改成Scheduled Hourly,即可设置每小时定时备份数据。也可以选择其他选项。

思源笔记配置

以后再水一篇文章吧。