本方案基于 livesync 插件 + 群晖 Docker,需要能访问自己家的 NAS,还要有一个域名~
官方项目地址 官方中文说明
使用快两个月了,丝滑同步,感觉在用云笔记软件~~
Docker 中搜索 couchdb 并下载
双击下载好的映像,进行安装,点击高级设置,进入配置页面
常规:勾选自动重新启动(可选)
保存这段官方的代码到文本文档,并重命名为 local.ini
[couchdb]
single_node=true
max_document_size = 50000000
[chttpd]
require_valid_user = true
max_http_request_size = 4294967296
enable_cors = true
[chttpd_auth]
require_valid_user = true
authentication_redirect = /_utils/session.html
[httpd]
WWW-Authenticate = Basic realm="couchdb"
bind_address = 0.0.0.0
[cors]
origins = app://obsidian.md, capacitor://localhost, http://localhost
credentials = true
headers = accept, authorization, content-type, origin, referer
methods = GET,PUT,POST,HEAD,DELETE
max_age = 3600
然后将 local.ini
上传到对应 NAS 路径中,这是官方说明页面
我一般端口手动设置一下保持和容器一致,不过本地端口应该可以自定义的,未测试~
在环境这里需要手动添加两个配置
COUCHDB_PASSWORD
值设置成你的密码
COUCHDB_USER
值设置成你的用户名
配置完启动Docker,访问 http://你的 IP:你的端口
例如:http://192.168.31.2:5984
成功的话会显示一串字符,这样就OK了~
接下来进行客户端插件的配置填写
URL
:就填你刚刚测试的那个网址,记得要加端口号
名字和密码
:就是你前面添加到 Docker 中的账号密码
数据库名字
:可以随便起一个,自己方便识别就好
填好就可以点击 Test 测试一下,测试成功连接的话会有提示
对了,建议打开 End to End Encryption
也就是端到端加密
然后进行同步的配置,建议直接选 LiveSync
也就是实时同步的预设~
毕竟装这个插件就是为了这个功能嘛~
要注意的一点是,这个插件与其他同步插件包括官方自己的同步是不兼容的,建议关闭其他所有同步设置,不然可能会出问题~
也可以同步客户端的设置和其他插件,不过这个是测试功能,可以按需开启~
必须为当前设备命名之后才可以开启
建议开启 notify customized ,这样有新的配置的时候,软件会弹出提醒,点击可以进入配置页面,手动选择要同步哪些内容
前面配置完了之后就可以进行同步了,不过现在只能内网访问,体验还不完美
接下来我们配置外网访问
我家里的NAS是之前就配置过[[DDNS]]和对应的[[域名证书]]的,如果你还不了解这方面的知识,请自行补课
以后我再单独写这方面的配置教程
这里默认你之前就可以外网访问家里的NAS,并配置了 SSL 证书
在路由器后台开启端口转发,这里借用一张网上的图
名称:随便写
协议:只要默认的 TPC 就好了
外部端口:随便填,建议和前面设置的群晖反向代理服务器端口一致
内部IP地址:你的 NAS 的地址
内部端口:前面设置的群晖反向代理服务器端口(不是docker默认端口 5984 哦)
添加之后保存生效
然后客户端对应的URI地址填你自己的域名地址和对应访问端口就OK啦
这是一个同步插件,不是备份插件,有群晖的话建议搭配一个 Drive 自动备份,我用这个的主要原因是为了 iOS 和 iPad 客户端的同步,苹果的 iCloud 同步会有问题,如果用的 PC 和安卓的话,感觉直接搭配群晖的 Drive 套件体验更好,还有多版本控制~