注意
单机部署minio是没有太大意义的,请勿用于生成环境,生产环境还是采用分布式部署;我图方便,不想用图床来做blog的图片,所以直接用了对象存储。
什么是minio
MinIO 是一款轻量、开源的高性能对象存储,是为海量数据存储、人工智能、大数据分析而设计的,它完全兼容Amazon S3接口,单个对象最大可达5TB,适合存储海量图片、视频、日志文件、备份数据和容器/虚拟机镜像等。MinIO主要采用Golang语言实现,客户端与存储服务器之间采用http/https通信协议。
docker单机部署minio
在dockers上部署minio是很简单的,我这里使用ubuntu操作系统,在home目录下新增了data目录,部署方式如下
docker run -p 9000:9000 -p 9191:9191 --name minio \
-d --restart=always \
-e MINIO_ACCESS_KEY=admin \
-e MINIO_SECRET_KEY=password123 \
-v /home/data:/data \
-v /home/data/config:/root/.minio \
minio/minio:RELEASE.2023-12-20T01-00-02Z server /data --console-address ":9000" --address ":9191"
配置说明
MINIO_ACCESS_KEY 用户名
MINIO_SECRET_KEY 密码
/home/data:/data 数据在本地的存储路径
/home/data/config:/root/.minio 配置文件的本地存储路径
console-address ":9000" web控制台的端口号,左边的可以自定义
address ":9191" API端口号,左边的可以自定义
minio/minio:RELEASE.2023-12-20T01-00-02Z 我习惯用这个版本
使用浏览器访问http://IP:9000 minio的web管理页面
输入刚才配置的用户名和密码即可正常登录控制台
配置反向代理
配置反向代理
为了安全考虑,我这里使用反向代理来访问minio,因我内网有群晖设备,群晖DSM本身就自带有反向代理功能,功能上和Nginx反代其实大同小异,我图个方便,如果你部署Ngnix有难度,可以考虑用docker部署NPM,这个反向代理工具支持docker部署,使用相当的方便。
打开群晖“控制面板”——“登录门户”——“高级”——点击“反向代理服务器”——点击“新增”
这里只需要新增API端口号“9191”的访问,当然图管理方便也可以开放9000端口,我这里9000和9191端口都开放了
点击“自定义标题”——“新增”——“websocket”,新增websocket后保持默认即可,没有新增websocket,可能后导致反代后Minio的Object Browser内容一直转圈无法正常浏览。
配置https证书
我的群晖之前已配置了证书,我这里不在赘述群晖证书配置,可以自行搜索群晖配置证书相关。
打开群晖“控制面板”——“安全性”——“证书”找到你的证书,并几点配置,将新增9191端口配置为群晖的证书。
使用浏览器访问反向代理的URL地址,已经可以正常访问了。
新增Buckets
点击“Buckets”——输入“Buckets name”——点击“Create Buckets”,创建一个新的Buckets
点击刚才创建的Buckets,将“Access Policy”修改为“Public”,并点击“Set”保存
新增用户
点击“Identity”——“USERS”——“Create User” 新增一个用户
点击已创建的用户名,“Group”选择已创建号的组,没有的话,可以新增一个,创建的组的过曾和新增用户基本一样,不再赘述。
点击“Server Accounts”——“Create Access Key”创建密钥
点击“Create”创建,并下载密钥信息到本地,记住,该密钥只显示一次。
测试Minio服务是否可用
本来想用群晖自带的Cloud Sync来测试是否可用,但多次测试后均无法成功,以至于我怀疑是不是我部署的Minio有问题,后面索性直接用了RaiDive的客户端,具体配置如下:
注意:在配置选项里选择“AWS S3 Compatible”,RaiDive的配置选项有minio,但不知道为啥一直无法连接,但选择S3配置就正常了。
可以看到,刚才配置的Buckets已可以正常访问。
自此,Minio服务器已完成配置。接下来,我们配置wordpress,以便使用我们部署的的对象存储服务。
wordpress配置minio对象存储
wordpress配置对象存储是非常容易的,在wordpress的插件内查找“media cloud”,并安装该插件。
安装完成后,点击Media Cloud Setting选项。按照下图的配置填入刚才配置Buckets的相关密钥信息。
测试配置是否生效
在wordpress的媒体库内上传一张名为“test”的图片
登录Minio后查看Buckets的,已经可以看到刚才上传的那张图片了。
自此,整个Minio的安装和使用过程已全部完成,哦耶!!!!!!!!!!