Joplin通过Nextcloud同步配置详解:自托管WebDAV完整教程
为什么选Nextcloud做Joplin同步
Joplin内置File system、Joplin Cloud、WebDAV等多种同步方式。其中Nextcloud作为WebDAV后端是很多技术用户的首选,原因有三:
- 完全可控:自己的服务器,不依赖第三方服务
- 大空间:存储空间取决于硬盘容量,远超免费云服务
- 统一管理:笔记、文件、日历、通讯录都能放在一起
但从零搭建Nextcloud并对接Joplin有不少坑,本文按步骤详解整条链路。
准备工作清单
在开始前确保具备:
| 必备项 | 说明 | 推荐方案 |
|---|---|---|
| 一台VPS或家庭服务器 | 2核4G内存即可跑Nextcloud | 阿里云轻量/腾讯云轻量/NUC自建 |
| 公网IP或内网穿透 | Nextcloud需要被Joplin访问 | 公网IP/Cloudflare Tunnel/FRP |
| 域名 | WebDAV访问需要可解析的域名 | 任意域名均可 |
| Nextcloud部署 | LNMP/Docker一键 | 推荐NextCloudAIO Docker |
| Joplin客户端 | 桌面+移动端 | 官方下载 |
部署Nextcloud(Docker AIO方式)
1. 系统准备
# Ubuntu/Debian系
sudo apt update && sudo apt install -y docker.io docker-compose
# 启动Docker
sudo systemctl enable --now docker
2. 启动NextCloudAIO
sudo docker run -d \
--name nextcloud-aio-mastercontainer \
--restart always \
--publish 80:80 \
--publish 8080:8080 \
--publish 8443:8443 \
--volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config \
--volume //var/run/docker.sock:/var/run/docker.sock:ro \
ghcr.io/nextcloud-releases/all-in-one:latest
3. 初始化
- 浏览器打开
https://你的IP:8443 - 复制显示的密码
- 等待自动拉取镜像
- 选择要启用的容器(默认即可)
- 设置管理员账号密码
AIO方式自动处理HTTPS、反向代理、cron等繁琐配置,比手动安装快得多。
4. 验证WebDAV
Nextcloud的WebDAV端点默认为:
https://你的域名/remote.php/dav/files/用户名/
在终端测试:
curl -u 用户名:密码 -X PROPFIND \
-H "Depth: 1" \
https://你的域名/remote.php/dav/files/用户名/
返回XML则WebDAV连通。
配置Joplin
1. 创建专用应用密码
不要用Nextcloud管理员密码同步Joplin,而是创建一个应用密码:
- 登录Nextcloud网页版
- 右上角头像 →
个人设置 → 安全 → 应用密码 - 名称填
Joplin - 点击
创建新应用密码 - 系统生成一段类似
xxxxx-xxxxx-xxxxx-xxxxx-xxxxx的字符串
2. 在Joplin中配置WebDAV同步
- 打开Joplin桌面端
设置 → 同步- 同步目标选择
WebDAV - 填写:
- WebDAV URL:
https://你的域名/remote.php/dav/files/用户名/ - 用户名:Nextcloud用户名
- 密码:刚才创建的应用密码
- WebDAV URL:
- 点击
检查同步配置验证
![Joplin同步配置示意图]
3. 启动首次同步
第一次同步会创建以下结构:
/Joplin/
├── locks/
├── resources/
│ └── {hash1} ← 附件原始文件
│ └── {hash2}
└── {syncId}.md ← 笔记元数据
笔记和附件分离存储,附件按内容哈希命名,支持去重。整个过程对几百MB的笔记库通常几分钟内完成。
4. 移动端同步
手机/平板上同样配置WebDAV:
- iOS:App Store安装Joplin → 设置同步目标 → 填相同信息
- Android:Play Store / APK安装 → 同上
只要用同样的Nextcloud账户,多端会保持完全同步。
端到端加密配置
加密的作用
Joplin默认情况下,笔记内容以明文存储在WebDAV服务端。这意味着如果你的Nextcloud被攻破,攻击者能直接看到笔记。
启用端到端加密(E2EE)后:
- 所有笔记内容和附件在客户端加密后才上传
- 服务器只看到密文
- 即使Nextcloud被攻破也读不到内容
配置方法
- Joplin
设置 → 同步 → 端到端加密 - 启用:
是(尚未配置) - Joplin生成主密钥
- 设置密码保护这个密钥
重要:这个密钥如果丢失,笔记将永久无法解密。建议使用密码管理器备份或单独加密U盘保管。
加密的代价
- 每次同步上传前解密、下载后加密,有一定性能开销
- 加密笔记不支持Web版Joplin查看
- 服务端无法对加密笔记做内容搜索(只能搜标题)
如果性能成为瓶颈,且你的Nextcloud仅自己访问,可以不启用加密。
同步冲突解决策略
冲突的产生
当你同时在多个设备编辑同一笔记,Joplin在同步时会检测冲突并保留两个版本:
冲突笔记 - 副本:2026-09-09 14:23 (手机)
冲突笔记 - 副本:2026-09-09 14:25 (电脑)
避免冲突的实践
- 避免同时离线编辑同一笔记:并行编辑不同笔记是安全的
- 手机端关闭后台常编辑:编辑完立即同步
- 重要笔记「锁机制」:在标题前加
🔒临时跳过 - 冲突发生后合并:手动对比两个副本,保留需要的部分,删除另一个
自动冲突解决方法
Joplin 10.x 后可以在 设置 → 同步 → 高级 选择:
总是保留冲突副本:简单直观直接覆盖:只看最后保存的版本按时间戳保留:自动保留最新的
性能优化
大库(>5000笔记)的痛点
笔记库达到几千条后,初次同步会变慢:
| 笔记数量 | 首次同步估计 | 日常同步延迟 |
|---|---|---|
| 500 | 30秒 | <5秒 |
| 2000 | 2分钟 | 10秒 |
| 5000 | 5分钟 | 20-30秒 |
| 10000+ | 10分钟+ | 30秒+ |
优化方案
- WebDAV服务器缓存:Nextcloud启用OPcache + Redis
- Joplin数据库:重建sqlite数据库
设置 → 通用 → 维护 - 分割同步:按笔记本分别启用同步(10.x新功能)
- 升级Nextcloud:22.x版本对WebDAV有大幅优化
服务器端性能调优
// config.php Nextcloud性能设置
'memcache.local' => '\\OC\\Memcache\\Redis',
'memcache.distributed' => '\\OC\\Memcache\\Redis',
'memcache.locking' => '\\OC\\Memcache\\Redis',
'redis' => array(
'host' => 'localhost',
'port' => 6379,
),
实战场景
场景一:个人跨设备同步
- 自己部署Nextcloud在NAS上
- 内网穿透用Cloudflare Tunnel或Tailscale
- Joplin配WebDAV,附加E2EE
- 手机/平板/电脑全端使用
场景二:家庭/小团队共享
- 一台家庭服务器跑Nextcloud
- 多用户互相分享笔记
- Joplin配合Nextcloud Groups做权限管理
- WebDAV同步走服务账户密码
场景三:纯内网(不暴露公网)
- 把Nextcloud部署在仅内网可达的服务器
- Joplin客户端也在内网(同一VLAN)
- 通过
https://nextcloud.local/...访问 - 防火墙策略限制外网
场景四:和公司网盘对接
部分企业有Confluence/SharePoint/Nextcloud on-prem实例,问IT申请应用密码后同样配置即可,注意:
- 公司可能禁用TLS自签证书
- 检查URL是否需要
/dav后缀 - WebDAV的
PROPFIND方法可能被代理拦截
常见问题排查
「无法连接到WebDAV服务器」
排查顺序:
- 浏览器手动访问URL,确认能登录
- 用curl命令测试WebDAV连通性
- 检查Joplin同步URL格式(结尾是否需要
/) - 检查Nextcloud .htaccess配置
- 查看Joplin日志
帮助 → 查看日志
「同步卡在某个百分比」
通常是单个笔记损坏:
- Joplin
设置 → 同步 → 高级 → 重置同步状态 - 删除
~/.config/joplin-desktop/locks/目录 - 重新触发同步
「WebDAV返回403」
权限问题:
- Nextcloud管理员设置 → 检查该用户是否有WebDAV访问权限
- 文件被加密存储解密失败 → 临时关闭E2EE测试
- URL路径中用户名是否区分大小写
总结
Joplin + Nextcloud + WebDAV 是自托管笔记同步的黄金组合,兼顾安全(可选E2EE)、灵活(无限容量)、可控(自己服务器)。适合技术用户和对隐私敏感的人群。对小白用户,Joplin Cloud官方同步更省心。
这篇教程有帮助吗?立即下载Joplin 中文网试试吧!
全平台支持 · 安全无毒 · 官方最新版