- 一、部署方案选择
- 1.1 Trilium 的三种使用方式
- 1.2 Trilium vs TriliumNext:如何选择
- 1.3 服务器部署平台选择
- 二、Docker 部署实战
- 2.1 为什么选择 Docker
- 2.2 准备工作
- 2.3 部署官方镜像(TriliumNext)
- 2.4 部署中文版(推荐国内用户)
- 2.5 群晖 NAS Docker 部署
- 2.6 Rootless 模式(安全增强)
- 三、同步机制详解
- 3.1 Trilium 同步架构
- 3.2 同步原理:基于 Entity Changes
- 3.3 配置桌面客户端同步
- 3.4 冲突处理机制
- 3.5 时间同步要求
- 四、反向代理与 HTTPS 配置
- 4.1 为什么需要反向代理?
- 4.2 方案一:Nginx 手动配置
- 4.3 方案二:Nginx Proxy Manager(图形化)
- 4.4 方案三:Cloudflare Tunnel(无需公网 IP)
- 五、数据备份策略
- 5.1 理解 Trilium 的数据存储
- 5.2 备份方式一:手动备份
- 5.3 备份方式二:自动定时备份
- 5.4 备份方式三:异地备份(推荐)
- 5.5 备份验证
- 5.6 Trilium 内置备份功能
- 六、浏览器扩展:Trilium Web Clipper
- 6.1 什么是 Trilium Web Clipper
- 6.2 安装与配置
- 6.3 使用技巧
- 七、生态扩展:Trilium WP 与 AI 集成
- 7.1 Trilium WP:从私人知识到公开发布
- 7.2 Trilium AI Chat:智能化知识管理
- 7.3 AI 赋能的知识管理工作流
- 八、常见问题排查
- 8.1 容器启动失败
- 8.2 同步失败
- 8.3 HTTPS 证书问题
- 8.4 性能优化
- 九、本节小结
- 📝 核心要点回顾
- 🎯 实践检查清单
- 📚 参考资源
- 官方文档
- Brave基地资源
在上一节课中,我们理解了知识主权的重要性——你的思想记录应该真正属于你,而非托管在商业公司的服务器上。
这一节,我们将把理念付诸实践:亲手部署一台属于自己的 Trilium 服务器。
📌 从这一刻起,你的每一条笔记、每一个想法、每一份知识积累,都将存储在你自己控制的服务器上。这就是"主权个人"的知识实践。
本节将涵盖:
- 🐳 Docker 部署 Trilium(多种方案)
- 🇨🇳 中文版配置
- 🔄 同步机制详解
- 🔐 反向代理与 HTTPS 配置
- 💾 数据备份策略
- 🌐 浏览器扩展:Trilium Web Clipper(新增)
- 🔌 生态扩展:Trilium WP 与 AI 集成(新增)
一、部署方案选择
1.1 Trilium 的三种使用方式
在开始部署之前,你需要明确自己的使用场景:
┌─────────────────────────────────────────────────────────────────┐
│ Trilium 使用方式选择 │
├─────────────────────────────────────────────────────────────────┤
│ │
│ 🖥️ 方式一:纯桌面使用 │
│ └── 下载桌面客户端,数据存储在本地 │
│ └── 适合:单设备用户,不需要多端同步 │
│ └── 优点:简单,无需服务器 │
│ └── 缺点:只能在一台设备上使用 │
│ │
│ 🌐 方式二:纯服务器使用 │
│ └── 部署服务器,通过浏览器访问 │
│ └── 适合:习惯浏览器操作,多设备通过网页访问 │
│ └── 优点:任何设备、任何地点都能访问 │
│ └── 缺点:依赖网络,离线无法使用 │
│ │
│ 🔄 方式三:服务器 + 桌面客户端同步(推荐) │
│ └── 服务器作为同步中枢,桌面客户端本地存储 │
│ └── 适合:追求最佳体验的主权个人 │
│ └── 优点:离线可用 + 多端同步 + 完全自主 │
│ └── 缺点:需要维护服务器 │
│ │
└─────────────────────────────────────────────────────────────────┘本课程推荐方式三:服务器 + 桌面客户端同步。 这种方式既保证了数据完全自主,又实现了多端同步和离线可用。
1.2 Trilium vs TriliumNext:如何选择
💡 背景说明:2024 年 1 月,Trilium 的开发者 Zadam 发表声明,宣布 Trilium Notes 进入维护模式。但承诺将继续维护,包括修复 bug、更新依赖库(如 Electron、Node.js、CKEditor、Mermaid)。
与此同时,社区开发者创建了 TriliumNext——一个由社区驱动的 fork 项目,继续活跃开发新功能。
| 版本 | 定位 | 适合人群 | 镜像地址 |
|---|---|---|---|
| Trilium (原版) | 维护模式,只修复 bug | 追求稳定、不需要新功能的用户 | zadam/trilium |
| TriliumNext | 活跃开发,持续添加新功能 | 喜欢尝试新功能、愿意参与社区的用户 | triliumnext/notes |
| Trilium 中文版 | 基于 TriliumNext 的完整中文汉化 | 国内用户,需要中文界面 | nriver/trilium-cn |
TriliumNext 的主要新功能:
- 🧠 思维导图笔记:支持修改节点颜色、添加标签和链接,可导出为 SVG
- 🎨 新主题选项:浅色/深色模式切换
- ⏰ 时间数据类型:自定义属性支持时间类型,适合任务管理
- 🔗 关系图增强:改善复杂知识网络的视觉呈现
1.3 服务器部署平台选择
| 平台类型 | 代表 | 优点 | 缺点 | 适合人群 |
|---|---|---|---|---|
| 云服务器 VPS | 阿里云、腾讯云、Vultr、DigitalOcean | 稳定、公网可访问 | 需要付费、需要基础运维知识 | 有一定技术基础的用户 |
| 家用 NAS | 群晖 Synology、威联通 QNAP | 一次购买长期使用、局域网速度快 | 公网访问需配置内网穿透 | 已有 NAS 的用户 |
| 本地服务器 | 旧电脑、树莓派、迷你主机 | 成本低、完全可控 | 需要保持开机、公网访问复杂 | 极客、动手能力强的用户 |
| 容器平台 | Cloudron、CasaOS、Umbrel | 图形化管理、一键部署 | 平台本身有学习成本 | 想要简化运维的用户 |
二、Docker 部署实战
2.1 为什么选择 Docker
Docker 是目前最流行的容器化技术,使用 Docker 部署 Trilium 有以下优势:
- ✅ 环境隔离:不影响宿主机其他服务
- ✅ 一键部署:几条命令即可完成
- ✅ 易于升级:更新镜像即可升级版本
- ✅ 便于迁移:打包数据目录即可迁移到新服务器
- ✅ 多架构支持:支持 AMD64、ARMv7、ARM64(适配树莓派、Mac M系列)
2.2 准备工作
📋 前置要求
在开始之前,请确保你的服务器满足以下条件:
| 项目 | 最低要求 | 推荐配置 |
|---|---|---|
| 操作系统 | Linux(Ubuntu/Debian/CentOS) | Ubuntu 22.04 LTS 或 Debian 12 |
| 内存 | 512MB | 1GB 以上 |
| 硬盘 | 5GB | 20GB 以上(取决于笔记量) |
| Docker | Docker 20.10+ | 最新稳定版 |
| 网络 | 能访问 Docker Hub | 如在国内,建议配置镜像加速 |
🐳 安装 Docker
如果你的服务器尚未安装 Docker,可以使用以下一键安装脚本:
# 官方安装脚本(推荐)
curl -fsSL https://get.docker.com | sh
# 将当前用户添加到 docker 组(避免每次都要 sudo)
sudo usermod -aG docker $USER
# 重新登录后生效,或执行以下命令立即生效
newgrp docker
# 验证安装
docker --version
docker compose version💡 国内用户提示:如果下载速度较慢,可以使用阿里云、腾讯云等提供的 Docker 镜像加速服务。
2.3 部署官方镜像(TriliumNext)
这是最推荐的部署方式。
📁 步骤一:创建目录结构
# 创建 Trilium 数据目录
mkdir -p ~/trilium-data
cd ~/trilium-data📝 步骤二:创建 docker-compose.yml
# 下载官方 docker-compose 文件
wget https://raw.githubusercontent.com/TriliumNext/Trilium/master/docker-compose.yml
# 或手动创建
cat > docker-compose.yml << 'EOF'
services:
trilium:
image: triliumnext/notes:latest
container_name: trilium
restart: unless-stopped
environment:
- TRILIUM_DATA_DIR=/home/node/trilium-data
ports:
- "8080:8080"
volumes:
- ./data:/home/node/trilium-data
EOF🚀 步骤三:启动容器
# 启动 Trilium
docker compose up -d
# 查看运行状态
docker compose ps
# 查看日志(如有问题可用于排查)
docker compose logs -f trilium✅ 步骤四:访问验证
打开浏览器,访问 http://你的服务器IP:8080
首次访问会看到初始化页面,你需要:
- 设置管理员密码
- 选择笔记存储位置(默认即可)
- 完成初始化
2.4 部署中文版(推荐国内用户)
Nriver/trilium-cn 是一个持续维护的中文汉化版本,提供:
- ✅ 完整的中文界面翻译
- ✅ 与官方版本同步更新
- ✅ 包含桌面客户端和服务器镜像
# 创建目录
mkdir -p ~/trilium-cn && cd ~/trilium-cn
# 创建 docker-compose.yml
cat > docker-compose.yml << 'EOF'
services:
trilium-cn:
image: nriver/trilium-cn:latest
container_name: trilium-cn
restart: unless-stopped
ports:
- "8080:8080"
volumes:
- ./data:/home/node/trilium-data
environment:
- TRILIUM_DATA_DIR=/home/node/trilium-data
EOF
# 启动
docker compose up -d2.5 群晖 NAS Docker 部署
如果你使用群晖 NAS,可以通过 Container Manager(原 Docker 套件)进行部署。
📋 步骤概览
- 安装 Container Manager
- 打开套件中心 → 搜索 "Container Manager" → 安装
- 下载镜像
- 打开 Container Manager → 注册表
- 搜索
nriver/trilium-cn(中文版)或triliumnext/notes(官方版) - 下载最新版本
- 创建容器
- 映像 → 选择已下载的镜像 → 启动
- 设置容器名称:
trilium - 勾选"启用自动重新启动"
- 配置端口映射
- 本地端口:8080(或其他未占用端口)
- 容器端口:8080
- 配置存储空间映射
- 添加文件夹映射
- 本地路径:
/docker/trilium/data(在 File Station 中预先创建) - 容器路径:
/home/node/trilium-data
- 启动并访问
- 访问
http://你的NAS-IP:8080
- 访问
📚 详细图文教程:参考 少数派:用群晖 Docker 部署 Trilium Notes
2.6 Rootless 模式(安全增强)
从安全角度考虑,TriliumNext 提供了 rootless 镜像,容器内进程不以 root 用户运行:
# 使用 rootless 镜像
docker run -d \
--name trilium \
-p 8080:8080 \
-v ~/trilium-data:/home/trilium/trilium-data \
triliumnext/notes:rootless
# 使用自定义 UID/GID(匹配宿主机用户)
docker run -d \
--name trilium \
-p 8080:8080 \
--user $(id -u):$(id -g) \
-v ~/trilium-data:/home/trilium/trilium-data \
triliumnext/notes:rootless三、同步机制详解
3.1 Trilium 同步架构
Trilium 采用星形拓扑结构进行同步:
┌─────────────────┐
│ Sync Server │
│ (同步服务器) │
│ │
│ ☁️ 中央数据库 │
└────────┬────────┘
│
┌─────────────────┼─────────────────┐
│ │ │
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ 💻 桌面 │ │ 💻 桌面 │ │ 🌐 浏览器 │
│ 客户端 A │ │ 客户端 B │ │ 访问 │
│ │ │ │ │ │
│ 本地数据库 │ │ 本地数据库 │ │ 直接读写 │
└──────────┘ └──────────┘ └──────────┘
(家里) (公司) (移动设备)核心特点:
- 🏠 离线优先:桌面客户端的数据存储在本地,即使服务器不可用也能正常使用
- ☁️ 服务器为中枢:所有客户端都与中央服务器同步,而非点对点同步
- 🔄 自动同步:一旦配置完成,同步是自动且持续进行的,无需手动触发
3.2 同步原理:基于 Entity Changes
Trilium 的同步机制基于实体变更追踪(Entity Changes):
| 概念 | 说明 |
|---|---|
| Entity(实体) | 笔记、附件、属性、分支等都是实体 |
| Entity Change(实体变更) | 每次修改都会生成一条变更记录 |
| Change ID | 每条变更都有唯一的递增 ID |
| Hash 校验 | 同步完成后计算数据哈希,确保一致性 |
同步流程:
┌─────────────────────────────────────────────────────────────────┐
│ 同步流程详解 │
├─────────────────────────────────────────────────────────────────┤
│ │
│ 1️⃣ 客户端登录 │
│ └── 客户端向服务器发送认证请求 │
│ └── 服务器验证密码并建立连接 │
│ │
│ 2️⃣ 推送本地变更(Push) │
│ └── 客户端发送自上次同步以来的所有本地变更 │
│ └── 服务器接收并应用这些变更 │
│ │
│ 3️⃣ 拉取远程变更(Pull) │
│ └── 服务器发送客户端缺失的变更 │
│ └── 客户端接收并应用这些变更 │
│ │
│ 4️⃣ 哈希校验 │
│ └── 双方计算所有数据的哈希值 │
│ └── 比对哈希,确保数据完全一致 │
│ │
│ 5️⃣ 完成同步 │
│ └── 更新同步状态 │
│ └── 如有差异,触发自动恢复机制 │
│ │
└─────────────────────────────────────────────────────────────────┘3.3 配置桌面客户端同步
📥 下载桌面客户端
根据你的操作系统下载对应版本:
| 系统 | 官方版下载 | 中文版下载 |
|---|---|---|
| Windows | GitHub Releases | Nriver Releases |
| macOS | 同上 | 同上 |
| Linux | 同上 | 同上 |
⚙️ 配置同步
- 首次启动客户端
- 选择"我已有一个运行中的同步服务器"
- 或在设置中配置同步
填写服务器信息
服务器地址:https://your-domain.com(或 http://IP:8080) 密码:你在服务器初始化时设置的密码- 等待初次同步
- 首次同步会下载服务器上的所有数据
- 取决于数据量,可能需要几分钟到几十分钟
- 验证同步状态
- 右上角同步图标显示绿色 ✅ 表示同步正常
- 点击图标可查看详细同步状态
3.4 冲突处理机制
当你在多个设备上同时编辑同一笔记,且在同步之前都进行了修改,会产生同步冲突。
Trilium 的冲突处理策略:
🔄 保留较新的更改,丢弃较旧的更改。较旧的更改会保存在笔记修订历史中,因此不会真正丢失。
最佳实践:
- ✅ 编辑前先等待同步完成(观察同步图标)
- ✅ 避免在多个设备上同时编辑同一笔记
- ✅ 定期检查笔记修订历史,确保没有遗漏的更改
3.5 时间同步要求
⚠️ 重要提示:为了成功同步,客户端和服务器的系统时间必须一致,允许最多 5 分钟的误差。
确保服务器时间准确:
# 查看当前时间
date
# 安装 NTP 服务(Ubuntu/Debian)
sudo apt install ntp -y
# 启动 NTP 服务
sudo systemctl enable ntp
sudo systemctl start ntp
# 或使用 systemd-timesyncd(更轻量)
sudo timedatectl set-ntp true四、反向代理与 HTTPS 配置
4.1 为什么需要反向代理?
直接通过 http://IP:8080 访问存在以下问题:
| 问题 | 说明 |
|---|---|
| 🔓 明文传输 | HTTP 协议不加密,密码和笔记内容可能被截获 |
| 🔢 端口暴露 | 需要记住端口号,不够优雅 |
| 📜 无法使用域名 | 没有 SSL 证书,现代浏览器会提示不安全 |
使用反向代理 + HTTPS 可以解决这些问题。
4.2 方案一:Nginx 手动配置
📦 安装 Nginx
# Ubuntu/Debian
sudo apt update
sudo apt install nginx -y
# 启动 Nginx
sudo systemctl enable nginx
sudo systemctl start nginx📝 创建 Nginx 配置文件
sudo nano /etc/nginx/sites-available/trilium写入以下内容(请替换 your-domain.com 为你的实际域名):
# HTTP 重定向到 HTTPS
server {
listen 80;
server_name your-domain.com;
return 301 https://$server_name$request_uri;
}
# HTTPS 配置
server {
listen 443 ssl http2;
server_name your-domain.com;
# SSL 证书配置(使用 Let's Encrypt)
ssl_certificate /etc/letsencrypt/live/your-domain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/your-domain.com/privkey.pem;
# SSL 安全配置
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256;
# 反向代理配置
location / {
proxy_pass http://127.0.0.1:8080;
proxy_http_version 1.1;
# WebSocket 支持(同步功能需要)
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
# 转发真实 IP
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# 超时设置
proxy_connect_timeout 60s;
proxy_send_timeout 60s;
proxy_read_timeout 60s;
}
}🔗 启用配置
# 创建符号链接
sudo ln -s /etc/nginx/sites-available/trilium /etc/nginx/sites-enabled/
# 测试配置语法
sudo nginx -t
# 重载 Nginx
sudo systemctl reload nginx🔐 申请 SSL 证书(Let's Encrypt)
# 安装 Certbot
sudo apt install certbot python3-certbot-nginx -y
# 申请证书(会自动配置 Nginx)
sudo certbot --nginx -d your-domain.com
# 测试自动续期
sudo certbot renew --dry-run4.3 方案二:Nginx Proxy Manager(图形化)
如果你不熟悉命令行配置,可以使用 Nginx Proxy Manager,它提供了 Web 图形界面来管理反向代理。
📦 部署 Nginx Proxy Manager
mkdir -p ~/nginx-proxy-manager && cd ~/nginx-proxy-manager
cat > docker-compose.yml << 'EOF'
services:
npm:
image: jc21/nginx-proxy-manager:latest
container_name: nginx-proxy-manager
restart: unless-stopped
ports:
- "80:80"
- "443:443"
- "81:81" # 管理界面
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
EOF
docker compose up -d⚙️ 配置步骤
- 访问
http://你的服务器IP:81 - 默认账号:
admin@example.com/ 密码:changeme - 首次登录后修改密码
- 添加 Proxy Host:
- Domain Names:
your-domain.com - Forward Hostname:
trilium(或服务器内网 IP) - Forward Port:
8080 - 勾选 "Block Common Exploits"
- Domain Names:
- SSL 选项卡:Request a new SSL Certificate,勾选 "Force SSL"
4.4 方案三:Cloudflare Tunnel(无需公网 IP)
如果你的服务器没有公网 IP(如家庭网络),可以使用 Cloudflare Tunnel:
# 安装 cloudflared
curl -L --output cloudflared.deb https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb
sudo dpkg -i cloudflared.deb
# 登录 Cloudflare
cloudflared tunnel login
# 创建隧道
cloudflared tunnel create trilium
# 配置隧道
cloudflared tunnel route dns trilium your-domain.com
# 运行隧道
cloudflared tunnel run --url http://localhost:8080 trilium五、数据备份策略
5.1 理解 Trilium 的数据存储
Trilium 使用 SQLite 数据库存储所有数据:
trilium-data/
├── document.db # 📦 核心数据库(包含所有笔记)
├── document.db-wal # 📝 预写日志(正常运行时存在)
├── document.db-shm # 🔗 共享内存文件(正常运行时存在)
├── config.ini # ⚙️ 配置文件
├── log/ # 📋 日志目录
└── backup/ # 💾 自动备份目录🎯 关键文件:
document.db包含了你所有的笔记、附件、属性、笔记历史——只需备份这一个文件,即可完整恢复你的知识库。
5.2 备份方式一:手动备份
📋 备份步骤
# 1. 停止 Trilium(确保数据完整性)
docker compose stop trilium
# 2. 复制数据库文件
cp ~/trilium-data/data/document.db ~/backup/trilium-backup-$(date +%Y%m%d).db
# 3. 重新启动 Trilium
docker compose start trilium📦 完整目录备份
# 备份整个数据目录
tar -czvf trilium-backup-$(date +%Y%m%d).tar.gz ~/trilium-data/data/5.3 备份方式二:自动定时备份
📝 创建备份脚本
sudo nano /usr/local/bin/backup-trilium.sh写入以下内容:
#!/bin/bash
# 配置
TRILIUM_DATA="/root/trilium-data/data"
BACKUP_DIR="/root/backup/trilium"
KEEP_DAYS=30 # 保留最近30天的备份
# 创建备份目录
mkdir -p $BACKUP_DIR
# 备份文件名(带日期)
BACKUP_FILE="$BACKUP_DIR/trilium-$(date +%Y%m%d-%H%M%S).db"
# 使用 SQLite 的 .backup 命令(支持热备份,无需停止服务)
sqlite3 "$TRILIUM_DATA/document.db" ".backup '$BACKUP_FILE'"
# 压缩备份文件
gzip $BACKUP_FILE
# 删除超过 KEEP_DAYS 天的旧备份
find $BACKUP_DIR -name "trilium-*.db.gz" -mtime +$KEEP_DAYS -delete
# 记录日志
echo "$(date): Backup completed - ${BACKUP_FILE}.gz" >> /var/log/trilium-backup.log⚙️ 设置定时任务
# 添加执行权限
sudo chmod +x /usr/local/bin/backup-trilium.sh
# 编辑 crontab
crontab -e
# 添加以下行(每天凌晨 3 点执行备份)
0 3 * * * /usr/local/bin/backup-trilium.sh5.4 备份方式三:异地备份(推荐)
本地备份无法防范硬盘损坏、服务器故障等情况。建议将备份同步到异地:
🔄 同步到对象存储(S3/OSS/COS)
# 安装 rclone
curl https://rclone.org/install.sh | sudo bash
# 配置 rclone(交互式配置)
rclone config
# 同步备份到云存储
rclone sync /root/backup/trilium remote:trilium-backup📧 发送到邮箱(小型知识库)
# 安装 mutt
sudo apt install mutt -y
# 发送备份到邮箱
echo "Trilium backup $(date)" | mutt -s "Trilium Backup" -a /root/backup/trilium/latest.db.gz -- your-email@example.com5.5 备份验证
定期验证备份文件的完整性非常重要:
# 检查数据库完整性
sqlite3 /root/backup/trilium/trilium-20250101.db "PRAGMA integrity_check;"
# 应返回 "ok"
# 测试性恢复(在临时目录)
mkdir -p /tmp/trilium-test
cp /root/backup/trilium/trilium-20250101.db /tmp/trilium-test/document.db
# 使用桌面客户端指向此目录测试5.6 Trilium 内置备份功能
除了手动备份,Trilium 还有内置的自动备份机制:
| 功能 | 说明 | 位置 |
|---|---|---|
| 笔记修订历史 | 自动保存笔记的历史版本 | 笔记右侧边栏 → Note Revisions |
| 自动备份 | 定期备份数据库快照 | trilium-data/backup/ |
| 迁移前备份 | 版本升级前自动备份 | backup/backup-before-migration.db |
💡 提示:内置备份是应急手段,不能替代完整的备份策略。建议同时使用自动脚本备份 + 异地同步。
六、浏览器扩展:Trilium Web Clipper
6.1 什么是 Trilium Web Clipper
Trilium Web Clipper 是一款专为 Trilium Notes 设计的浏览器扩展程序,让你能够一键保存网页内容到你的 Trilium 知识库中。
主要功能:
- 📄 全页保存:将当前网页的全部内容保存为一个笔记,包括文字、图片、链接等
- ✂️ 选择性保存:只保存选中的文字或图片,方便提取关键信息
- 📝 Markdown 转换:将网页内容转换为 Markdown 格式
- 📸 网页截图:将当前网页截取为图片,方便快速保存网页快照
6.2 安装与配置
📥 安装扩展
- 在 Chrome/Edge/Firefox 扩展商店中搜索 "Trilium Web Clipper"
- 或访问 GitHub 页面 手动安装
⚙️ 配置连接
- 点击浏览器工具栏上的 Trilium Web Clipper 图标
- 填写你的 Trilium 服务器地址(如
https://your-domain.com) - 输入你的 Trilium 密码进行认证
- 选择默认保存位置(目标笔记)
6.3 使用技巧
- 快捷键:安装后支持键盘快捷键,使保存信息更加快捷
- 保存到指定位置:剪藏时可以选择保存到哪个笔记下
- 自动标签:可以为剪藏的内容自动添加标签(如
#webclipper)
🔒 隐私说明:扩展程序是开源的,开发者声明不会收集或使用用户的数据。代码开源,任何人都可以查看和审查其安全性。
七、生态扩展:Trilium WP 与 AI 集成
💡 Trilium Notes/TriliumNext 已成为 Brave基地 的核心基础设施。基地还开发了将 Trilium 与 WordPress 联通的 Trilium WP 插件。
7.1 Trilium WP:从私人知识到公开发布
Trilium WP 是 Brave基地 开发的 WordPress 插件(目前处于内测阶段),能够实现:
- 🔗 ETAPI 集成:调用 Trilium 的 ETAPI,动态获取知识库内容
- 📤 知识发布:将 Trilium 中整理成熟的笔记发布到 WordPress 上
- 🔄 动态更新:当 Trilium 中的内容更新时,网站展示也会相应更新
典型工作流:
Trilium(私人知识库)→ Trilium WP(桥梁)→ WordPress(公开发布)7.2 Trilium AI Chat:智能化知识管理
Trilium AI Chat 是 Trilium WP 的子插件,将 AI 聊天功能与 Trilium Notes 知识库系统融为一体:
主要特点:
- 🤖 多模型支持:可以根据不同任务选择适当的 AI 模型
- 🔐 安全设计:API 密钥仅管理员可访问,所有 API 调用在服务器端完成
- 📝 Gutenberg 集成:提供专用的"Trilium AI 聊天"块
- 🌙 深色模式:自动适应用户的视觉偏好
核心价值:
通过这款插件,你的 Trilium 笔记库从静态的知识存储转变为动态的智能助手,而 AI 则从通用工具变成了具有"个人知识背景"的专属顾问。
适用场景:
- 📚 研究人员:更快地汇总和分析已有资料,发现新的研究方向
- ✍️ 作家:更有效地整合素材,获得创作灵感
- 🎓 学习者:更深入地理解和连接知识点,构建完整的知识体系
7.3 AI 赋能的知识管理工作流
Brave基地 使用 n8n 作为自动化流程编排工具,连接 Open WebUI、Trilium 等不同工具,实现:
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ 信息采集 │ → │ AI 处理 │ → │ 知识存储 │
│ Web Clipper │ │ Open WebUI │ │ Trilium │
└─────────────┘ └─────────────┘ └─────────────┘
↓ ↓ ↓
└────────────────────┴────────────────────┘
│
┌─────────────┐
│ n8n │
│ 自动化编排 │
└─────────────┘
│
┌─────────────┐
│ WordPress │
│ 知识发布 │
└─────────────┘八、常见问题排查
8.1 容器启动失败
症状:docker compose up -d 后容器未运行
排查步骤:
# 查看容器状态
docker compose ps -a
# 查看容器日志
docker compose logs trilium
# 常见原因:
# 1. 端口被占用 → 修改 docker-compose.yml 中的端口映射
# 2. 数据目录权限问题 → sudo chown -R 1000:1000 ~/trilium-data/data
# 3. 镜像下载失败 → 检查网络,或使用镜像加速8.2 同步失败
症状:客户端显示同步错误
排查清单:
| 检查项 | 命令/方法 |
|---|---|
| 服务器是否可达 | curl -I https://your-domain.com |
| 密码是否正确 | 重新输入密码测试 |
| 时间是否同步 | date 对比服务器和客户端时间 |
| 版本是否一致 | 确保客户端和服务器版本相同 |
| WebSocket 是否正常 | 检查 Nginx 配置中的 Upgrade 设置 |
8.3 HTTPS 证书问题
症状:浏览器提示证书不安全
解决方案:
# 检查证书状态
sudo certbot certificates
# 手动续期
sudo certbot renew
# 检查 Nginx 配置
sudo nginx -t8.4 性能优化
如果笔记数量较多(10000+),可以考虑以下优化:
# docker-compose.yml 添加资源限制
services:
trilium:
# ...
deploy:
resources:
limits:
memory: 2G
reservations:
memory: 512M九、本节小结
📝 核心要点回顾
- 部署方式选择:推荐使用"服务器 + 桌面客户端同步"模式
- Docker 是最简单的部署方式
- 中文版推荐:国内用户建议使用
Nriver/trilium-cn镜像- 完整中文界面 + 持续更新
- 同步机制:基于 Entity Changes 的增量同步
- 离线优先,自动同步
- 注意时间同步要求
- 安全配置:务必配置 HTTPS
- 可选 Nginx 手动配置 / Nginx Proxy Manager / Cloudflare Tunnel
- 备份策略:
document.db是核心文件- 建议自动定时备份 + 异地同步
- 定期验证备份完整性
- 生态扩展:
- Web Clipper 实现网页内容一键采集
- Trilium WP 实现从私人知识到公开发布
- Trilium AI Chat 实现智能化知识管理
🎯 实践检查清单
完成本节学习后,请确认你已经:
回复