Trilium Next 搭建

Trilium Next Docker 搭建指南(Debian 13 / root 用户)


一、安装 Docker

1. 更新系统并安装依赖

apt update && apt upgrade -y
apt install ca-certificates curl gnupg -y

2. 添加 Docker 官方 GPG 密钥

install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
chmod a+r /etc/apt/keyrings/docker.gpg

3. 添加 Docker 软件源

Debian 13 (Trixie) 可能尚未被 Docker 官方收录,如果步骤 4 报错,将 trixie 改为 bookworm(向下兼容,可正常使用)。
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
  trixie stable" | \
  tee /etc/apt/sources.list.d/docker.list > /dev/null

如果 trixie 源不可用,替换为:

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
  bookworm stable" | \
  tee /etc/apt/sources.list.d/docker.list > /dev/null

4. 安装 Docker

apt update
apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y

5. 启动 Docker 并设置开机自启

systemctl start docker
systemctl enable docker
docker --version

二、部署 Trilium Next

6. 创建数据目录

mkdir -p /opt/trilium-data

7. 拉取并启动容器

docker run -d \
  --name trilium \
  --restart unless-stopped \
  -p 127.0.0.1:8080:8080 \
  -v /opt/trilium-data:/home/node/trilium-data \
  triliumnext/notes:latest

8. 确认运行正常

docker ps | grep trilium
curl http://127.0.0.1:8080

三、安装并配置 Nginx

9. 安装 Nginx

apt install nginx -y
systemctl enable nginx
systemctl start nginx

10. 申请 Let's Encrypt 证书

apt install certbot python3-certbot-nginx -y
certbot certonly --nginx -d trilium.example.com

11. 创建站点配置

trilium.example.com 替换为你的实际域名:

nano /etc/nginx/sites-available/trilium

写入:

server {
    listen 80;
    server_name trilium.example.com;
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl;
    server_name trilium.example.com;

    ssl_certificate     /etc/letsencrypt/live/trilium.example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/trilium.example.com/privkey.pem;

    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;

    client_max_body_size 50M;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        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;
    }
}

12. 启用站点并重载 Nginx

ln -s /etc/nginx/sites-available/trilium /etc/nginx/sites-enabled/
rm -f /etc/nginx/sites-enabled/default
nginx -t
systemctl reload nginx

四、防火墙(如启用了 ufw)

apt install ufw -y
ufw allow 22/tcp
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable

五、访问

浏览器打开 https://trilium.example.com,首次访问设置密码即可使用。


常用维护命令

操作命令
查看日志docker logs -f trilium
停止容器docker stop trilium
启动容器docker start trilium
更新版本docker pull triliumnext/notes:latest && docker stop trilium && docker rm trilium,然后重新执行步骤 7
备份数据cp -r /opt/trilium-data /opt/trilium-backup-$(date +%F)
查看 Nginx 日志tail -f /var/log/nginx/error.log
续期证书certbot renew(已自动配置定时任务)
无标签
评论区
头像