MinIO介绍

MinIO 是一种对象存储解决方案,可提供与 Amazon Web Services S3 兼容的 API,并支持所有核心 S3 功能。 MinIO 旨在部署在任何地方,公共云或私有云、裸机基础设施、编排环境和边缘基础设施。

部署

Docker部署(推荐)

参考文档

MinIO 容器对象存储 — 用于容器的 MinIO 对象存储

部署过程

安装docker

系统安装docker和docker compose的方法这里就不再赘述了,网上一搜一大堆

部署过程
创建minio应用数据目录

这个目录主要是用来储存minio自己的数据的


mkdir -p /appdata/minio/data

  

创建储存数据目录

这个目录是用来储存用户上传的数据的


mkdir -p /appdata/minio/userdata

创建应用

cd /appdata/minio

  

docker run \

-p 9000:9000 \

-p 9001:9001 \

--name minio \

-v ./data:/root/.minio \

-v ./userdata:/userdata \

-e "MINIO_ROOT_USER=ROOTNAME" \

-e "MINIO_ROOT_PASSWORD=CHANGEME123" \

quay.io/minio/minio server /userdata --console-address ":9000" -address ":9001"

命令解释
  • -p 9000:9000 左边的9000是web控制台的外部访问端口,右边的9000必须和 --console-address ":9000" 中的9000对应

  • -p 9001:9001 左边的9001是oss的对外服务地址,右边的9001必须和-address ":9001" 中的9001对应

  • --name minio 应用名称

  • -v ./data:/root/.minio 映射应用数据目录

  • -v ./userdata:/userdata 映射oss上传的数据目录,右边必须和quay.io/minio/minio server /userdata这里的/userdata对应,左边就是刚才创建的目录

  • -e "MINIO_ROOT_USER=ROOTNAME" 管理员账号

  • -e "MINIO_ROOT_PASSWORD=CHANGEME123" 管理员密码

  • quay.io/minio/minio server /userdata --console-address ":9000" -address ":9001" 这一段是拉起服务的

UNRAID应用市场部署

仅限于使用UNRAID NAS系统的同志

非UNRAID系统的其他NAS系统一般都自带Docker,建议使用docker部署

首先在应用市场搜索应用
PixPin_2025-03-19_16-45-27.png
根据配置模版配置应用

按照下图中的备注配置

但是要注意几个端口号要配置正确,具体参照上方的docker部署方法,参数是相同的

PixPin_2025-03-19_19-59-56.png

使用

登录

访问 http://你的IP地址:9000/login

PixPin_2025-03-19_20-42-55.png

创建用户

PixPin_2025-03-19_20-45-46.png
PixPin_2025-03-19_20-48-15.png

创建用户组

PixPin_2025-03-19_20-49-27.png
PixPin_2025-03-19_20-51-18.png

创建Buckets

PixPin_2025-03-19_20-53-45.png
PixPin_2025-03-19_20-55-46.png

为了方便外部访问最好打开Buckets的匿名访问

PixPin_2025-03-19_21-10-34.png

创建AccessKey和SecretKey

自建对象储存肯定是需要用其他方式调用对象储存的,调用就需要这两个值

由于我们创建了用户,为方便权限管理,我们就在用户下面创建

第二步后选择自己创建的用户,然后就会出现第三步和第四步

PixPin_2025-03-19_21-01-34.png
PixPin_2025-03-19_21-04-23.png
PixPin_2025-03-19_21-07-01.png

这是json文件的内容,里面包含了accessKey和secretKey


{"url":"http://127.0.0.1:9001","accessKey":"MjXO2yYdY1S4OYzUHqHe","secretKey":"umEUeG4PcYhUzjdpYfGhfGL4hZysC1U4FeEDem80","api":"s3v4","path":"auto"}

接下来就可以通过9001端口对外提供服务了

对象上传与删除

PixPin_2025-03-19_21-36-59.png

安全的提供服务

现在虽然可以通过9001端口访问服务了,但是不可能一直在内网传输,肯定要涉及外网使用,我这里使用的是lucky这个服务使用https反向代理的minio服务。大家也可以使用自己的方法代理自己的服务。