搭建 minio 实现笔记同步和自建图床(放空大脑版)
宝塔面板
安装宝塔面板对服务器进行管理,一般在没有任何环境的服务器上使用
如果服务器之间已经安装了 nginx,apache 还有 mysql 之类的环境则不推荐使用宝塔
宝塔面板可以使用官方的命令进行安装, 这里我的服务器使用 debian 的安装脚本
wget -O install_panel.sh https://download.bt.cn/install/install_panel.sh && bash install_panel.sh ed8484bec
提示需要权限就加上 sudo, 运行后等待安装
安装完后使用账号和密码登录面板, 如果是云服务器使用公网地址访问, 本地使用内网地址
首次进入需要绑定宝塔的账号(在宝塔官网注册一个)
同时会提醒安装 web 服务经典套装, 选择带 nginx 的即可(反向代理需要用到)
如果不需要别的可以只勾选 nginx
等待安装完毕
docker
使用宝塔面板可以直接安装 docker 服务, 安装完毕后直接在 docker 栏中应用商店搜索 minio

点击安装即可
安装完成后在容器界面找到正在运行的 minio 容器查看容器详情
用户默认为 minio, minio 的 web 管理页面默认是 http://ip:19001, 服务地址默认是 http://ip:19000

minio
使用账号和密码登录 minio 的 web 管理页面

点击左上角可以创建存储桶, 我这里 myimg 用作图床, myminio 用做笔记同步
建完存储桶可以不用再管 minio 的 web 管理端了, 最新版本的 minio 阉割了 99% 的 web 管理功能
这里采用别的方法对存储桶进行管理
进入 docker
使用 minio 的 web 管理终端创建的存储桶默认是私有权限, 只能认证后访问
也就是说图床服务是失效的, 只能存储, 不能公开访问
其中一个方案是进入 docker 容器, 使用 minio 的 cli 也就是 mc 进行管理, 有宝塔面板的话就很简单, 使用 root 权限启动容器终端即可

进入终端后, 使用 mc 为搭建的 minio 起一个别名
mc alias set 别名 http://ip:19000 <access-key> <secret-key>
如果是云服务器, ip 使用公网地址, 内网服务器使用内网地址
access-key 即账号, 默认为 minio
secret-key 即密码, 由宝塔随机生成
取完别名后可以查看当前的存储桶
# 列出上面创建的两个存储桶
mc ls 别名
将 myimg 设置为可匿名访问, 即公开
mc policy set public 别名/myimg
验证策略是否生效
mc policy get 别名/myimg
通过客户端
如果日常使用的是 windows, 可以使用 AWS s3 的相关客户端工具 s3browser, 在官网可以下载
linux 下似乎只有 crossftp 是有 gui 能用的, 但用的 java 开发, 在我的系统上丑的一, 遂放弃客户端
配置反代[可选]
如果有域名, 希望通过域名访问, 可以添加反向代理
同样在宝塔中可以直接添加

如果有域名 xxxx.com 可以直接填一个喜欢的子域名如 myminio.xxxx.com
如果有 ssl 证书也可以顺手部署一个
配置 SSL[可选]
需要先配置反向代理
如果有 ssl 证书, 希望通过 https 进行资源的同步和图片的访问, 可以添加 ssl 证书
在 docker 管理界面的网站页面可以查看反向代理的情况和 ssl 证书状态

打开 ssl 管理界面将自己的证书和密钥粘贴并保存即可

siyuan 客户端
笔记同步
在设置-云端选择同步服务为 s3, 开始配置

| 配置项 | 内容 | 内容(有域名) | 内容(有 ssl 证书) |
|---|---|---|---|
| endpoint | http://ip:19000 | http://域名 | https://域名 |
| accesskey | minio |
||
| secretkey | 密码 | ||
| bucket | 用作笔记同步的存储桶名 | ||
| region id | minio 没有这一项的校验 但思源有, 填一个 cn-east-1 即可 |
||
| timeout | 使用默认值 60 即可 | ||
| addressing | path-style | ||
| tls verify | skip | skip | verify |
| concurrent reqs | 使用默认值 8 即可 |
配置完成后启用云端同步即可, 关于同步选项, 个人选择手动同步
图床服务
在思源插件商店找到 picgo 插件并安装

由于这里只配置 s3 服务, 可以在插件设置中选择不显示其他的图床服务

转到图床设置, 选择 AWS-s3 配置进行编辑

配置项照抄即可
如果没有域名, 自定义节点填: http://ip:19000
如果有域名, 自定义节点填: http://域名
如果在有域名基础上还有 ssl 证书, 填 https://域名
pathstyle 选择启用, 拒绝无效 tls 证书在没有 ssl 证书情况下关闭, 有证书则启用
关闭编辑配置界面后选择配置文件作为默认配置即可

配置完成后可以自动将粘贴的图片上传到 minio 的对应存储桶
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于