使用minio和思源搭建私有的笔记系统

使用minio和思源搭建私有的笔记系统
逐暗者思源笔记
使用 思源笔记 作为自己的笔记软件,是出于以下几点:
- 思源笔记是已本地优先的笔记。避免了云端出现问题后,笔记无法使用的尴尬。
- 思源笔记可以采用自建的服务器来同步数据(支持S3协议和webdav),并采用端到端加密同步,个人笔记的一些重要、敏感内容不用担心泄密。
- 多层级的笔记管理方式。(这里吐槽印象笔记不支持多层级)
- 插件、主题、外挂等扩展性比较好。
- 用自建同步的话,价格是买断制,不用持续的支出。
自建minio服务
搭建服务器
弄一台服务器的方式有很多:
oracle 的免费云服务器,一个账号2台,每台1G内存,默认50G硬盘(安装完系统剩下30G左右,另外免费账号一共是200G硬盘),带宽0.5G左右。用来同步数据绰绰有余了。
自己家里架设一台微电脑(最好是低压的CPU,低功耗)配合内网穿透用来同步数据也是绰绰有余了,内网穿透推荐natfrp。
阿里云/腾讯云买一台服务器,一般首年只有100不到。阿里云的话是新老优惠99一年,可以原价续费,2C2G3M的服务器。一个实名账号仅限购买一台。
搭建面板
服务器架设完成之后就是搭建面板,推荐使用1panel,很多软件都可以一键安装。按照安装文档安装面板就行,几乎是傻瓜式的一键安装。唯一需要注意的是,安全策略需要放开相关控制面板的端口。
已oracle云服务器为例,需要如下放开安全策略
安装minio
在1panel面板中选择minio进行安装
配置好初始账号、密码和端口。
安装好之后,有2种方式可以访问。一种是采用上一步配置的9000端口直接访问,这就需要在防火墙中添加2个端口为白名单。个人不太喜欢这种方式,所以前面使用OpenResty作为反向代理。这样不用对外暴露9000和9001端口了。
配置存储桶
使用域名登录管理端
创建存储桶,可以看到我这里已经有一个名为siyuan的桶用于同步笔记了
一般来说输入桶的名称创建桶就可以了,但是如果要桶复制功能,需要额外开启versioning。后面会介绍使用这个功能来同步复制,使自己的数据更安全。
创建一个key用于同步,一般来说默认创建就可以了(默认可以访问到所有桶)
如果需要配置权限,就需要额外配置策略了。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"admin:*"
]
},
{
"Effect": "Allow",
"Action": [
"kms:*"
]
},
{
"Effect": "Allow",
"Action": [
"s3:*"
],
"Resource": [
"arn:aws:s3:::桶名称/*"
]
}
]
}配置区域,想填什么填什么。
配置思源笔记的S3同步
至此,思源笔记的同步就完成了,触发一下同步,就可以正常使用了。
备份
既然是自建服务,那相应的备份工作也是需要做好的。
- 周期性备份
- 异地备份
- 实时备份
1panel面板有计划任务,可以备份目录、备份应用等等。除此之外,也可以使用一些脚本来将本地目录打包上传到七牛、阿里oss等第三方作为备份。当然不定期的手动执行导出数据也是一种备份。
这里再介绍一种使用minio复制桶的功能,来做实时备份。
创建桶复制规则
配置好另一个桶的信息
建议是2个桶不要放在一个服务器上,不然万一服务器出现点问题2个桶数据都有可能丢失。