由于不明的原因,在我 switch to Linux Desktop 之后,siyuan-note 总是在试图 Sync 时提示我 failed to lock cloud directory...
然而经过我的测试,在手机端同步又非常的正常。令人摸不着头脑,虽然几天前刚刚续费了,但既然出了这档子事,干脆就开始成为 self host user 吧。
思源笔记支持 webdav 和 S3 compatible API,考虑到原生使用的应该是 S3,兼容性大概相对好一些,所以我决定使用 S3.
- Easy Path:直接使用国内云厂商的 S3 存储服务,例如腾讯云的 COS、阿里云的 OSS 等。不错的选择,实际上也并不贵。
- Hard Path:拿手上的闲置云服务器,直接自建 S3 compatible Service.
我选择后者。毕竟吃灰的小鸡实在是太多了 XD.
对于具体的工具,我选择了 SeaweedFS,一个分布式文件存储系统。具体是什么原因忘了,但我依稀记得当初跟 MinIO 对比后我选择了它。那就延续之前的我的选择吧。
SeaweedFS 的安装看起来很简单粗暴:
Quick Start with Single Binary
- Download the latest binary from https://github.com/seaweedfs/seaweedfs/releases and unzip a single binary file
weed
orweed.exe
. Or rungo install github.com/seaweedfs/seaweedfs/weed@latest
.- Run
weed server -dir=/some/data/dir -s3
to start one master, one volume server, one filer, and one S3 gateway.Also, to increase capacity, just add more volume servers by running
weed volume -dir="/some/data/dir2" -mserver="<master_host>:9333" -port=8081
locally, or on a different machine, or on thousands of machines. That is it!
Oh, that's really really straight-forward. One binary is just all we need. That's it.
首先创建一个思源的数据文件夹,然后跑起来就行了。我决定使用稍微复杂一点的玩法。
鉴权,往 config.json 里面写:
{
"identities": [
{
"name": "clouder",
"credentials": [
{
"accessKey": "clouder_access_key",
"secretKey": "clouder_secret_key"
}
],
"actions": [
"Admin",
"Read",
"ReadAcp",
"List",
"Tagging",
"Write",
"WriteAcp"
]
}
]
}
也就是唯一一个用户拥有各种权限。
mkdir siyuan-data
./weed master -volumeSizeLimitMB=1024
./weed volume -dir="/home/clouder/siyuan-data" -mserver="localhost:9333" -port=9334
./weed filer -s3 -s3.config=config.json
这个时候已经可以用了,默认开放的端口是 http://ip:8333
,当然 http 不太安全,建议套一层 reverse-proxy 变成 https.
填到思源笔记的 Config-Cloud 选项中就可以了。打开 siyuan.log
就能看到同步中了。
数据无价,记得勤劳备份。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于