Docker部署Trilium Notes结合cpolar实现远程在线协作
Trilium Notes是一款优秀的层次化笔记应用,支持丰富的文本格式、代码高亮以及关系图谱,非常适合用来构建个人或团队的知识库。通过Docker部署Trilium的服务端版本,我们可以将其作为中央服务器,实现多端同步。然而,如果团队成员处于不同的网络环境,直接访问内网服务会遇到阻碍。此时,结合cpolar内网穿透工具,可以轻松将本地服务暴露到公网,实现随时随地的远程在线协作。本文将提供详细的图文教程。
一、环境准备
在开始部署之前,请确保您的系统(推荐Linux,如Ubuntu或CentOS)已经安装了Docker以及Docker Compose。本教程基于命令行操作进行演示。
二、Docker部署Trilium Notes
使用Docker部署Trilium Notes非常快捷,只需拉取官方镜像并运行即可。
1. 拉取Trilium镜像
在终端中执行以下命令拉取最新的Trilium服务端镜像:
docker pull zadam/trilium:latest
2. 启动Trilium容器
使用以下命令启动容器,并配置数据持久化与端口映射:
docker run -d --name trilium-notes -p 8080:8080 -v /opt/trilium-data:/home/node/trilium-data zadam/trilium:latest
参数说明:
-d:在后台运行容器。--name trilium-notes:将容器命名为trilium-notes,方便后续管理。-p 8080:8080:将容器内部的8080端口映射到主机的8080端口。-v /opt/trilium-data:/home/node/trilium-data:将容器内的数据目录挂载到主机的/opt/trilium-data,确保笔记数据不会因容器删除而丢失。
3. 本地访问测试
容器启动后,在浏览器中输入http://localhost:8080或http://你的内网IP:8080,即可进入Trilium Notes的初始化设置界面。按照提示设置登录密码并进入系统,确认本地部署成功。
三、安装cpolar内网穿透
本地部署成功后,该服务仅限内网访问。为了让异地团队成员能够协作,我们需要安装cpolar来生成公网地址。
1. 一键安装cpolar
在终端中执行以下脚本快速安装cpolar:
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
2. 认证cpolar
访问cpolar官网(https://www.ipipp.com)注册账号并登录,在后台仪表盘页面获取Authtoken认证字符串,然后执行以下命令进行认证:
cpolar authtoken 你的Authtoken认证字符串
3. 启动cpolar服务
认证完成后,执行以下命令启动并设置cpolar开机自启:
sudo systemctl start cpolar sudo systemctl enable cpolar
四、创建隧道映射Trilium端口
cpolar安装并启动后,我们需要创建一条隧道,将Trilium的8080端口映射到公网。
1. 命令行方式创建
在终端中执行以下命令,快速创建一个HTTP隧道:
cpolar http 8080
命令执行后,终端会显示cpolar生成的公网URL,例如https://a1b2c3d4.r1.cpolar.cn。
2. Web管理界面创建(推荐)
除了命令行,也可以在浏览器访问本地cpolar管理界面http://localhost:9200,使用图形化界面操作:
点击左侧菜单的隧道管理 - 创建隧道。
隧道名称:自定义填写,例如
trilium。协议类型:选择
http。本地地址:填写
8080。端口类型:选择
随机临时TCP端口。点击
创建按钮。
创建成功后,在状态 - 在线隧道列表中,即可看到刚刚生成的公网地址。
五、远程在线访问与协作
现在,将cpolar生成的公网地址(例如展示URL结构:https://www.ipipp.com)发送给您的团队成员。团队成员在浏览器中输入该地址,即可打开Trilium Notes的登录界面。
输入之前设置的密码登录后,团队所有成员都可以共同编辑笔记、查看知识库更新,实现流畅的远程在线协作。
六、配置固定二级子域名(进阶)
需要注意的是,cpolar免费版生成的随机公网地址每次重启都会发生变化,不适合作为长期固定的团队协作入口。建议配置固定的二级子域名。
登录cpolar官网后台,进入预留页面,选择保留二级子域名。
设置一个容易记忆的域名前缀,选择地区后点击保留。
回到本地cpolar Web管理界面(
http://localhost:9200),找到之前创建的trilium隧道,点击右侧的编辑按钮。将
端口类型修改为选择固定的二级子域名,并在下拉列表中选择刚才保留的域名。点击
更新按钮,然后重启该隧道。
更新完成后,在线隧道列表中的公网地址将变为固定的二级子域名,团队成员无需再担心地址变动问题,协作体验更加稳定。
七、总结
通过Docker快速部署Trilium Notes服务端,并结合cpolar内网穿透技术,我们成功打破了本地网络的限制。这种方式不仅部署简单、数据完全由自己掌控,还能低成本地实现跨地域的团队远程协作。无论是构建团队共享知识库,还是个人多端同步笔记,这都是一个高效且可靠的解决方案。