【Minio】Linux安装部署、概念、sdk使用(依赖)
官方文档,调整访问权限:
Access Control with Policy Management | AIStor Object Store Documentation
文章
https://zhuanlan.zhihu.com/p/611761457
安装和部署MinIO
054-尚庭公寓-开发准备-开发环境-安装MinIO_哔哩哔哩_bilibili
官方文档:
安装和部署MinIO — MinIO中文文档 | MinIO Linux中文文档

英文:
下面的截图好像还是旧版的,官网似乎更新了
下载minio服务器文件
使用镜像站,实际上就是官方文档的命令,将dl.min.io改为dl.minio.org.cn
wget https://dl.minio.org.cn/server/minio/release/linux-amd64/archive/minio-20250422221226.0.0-1.x86_64.rpm -O minio.rpm
sudo dnf install minio.rpm
创建 systemd 系统启动服务文件

我使用的是官方文档中的第一步的步骤,也就是rpm安装软件包
图中文档说明,使用这个rpm,会把服务文件安装到/usr/lib/systemd/system/minio.service,所以不用管了
如果是二进制安装,要手动创建这个文件,把图中文档中的内容复制进去
创建环境变量文件

MINIO_ROOT_USER和PASSWORD,声明minio服务初始的用户名和密码
MINIO_VOLUMES是minio的路径,指定了根目录下的date目录。要自己手动创建
MINIO_OPTS是minio的选项,console是后台管理的页面,address声明了端口号。因为后台管理页面的端口号不固定,每次启动都会变化,通过选项固定端口号为9001。API接口的地址是固定的9000
和官网配置一致,删除了注释
MINIO_ROOT_USER和MINIO_ROOT_PASSWORD的value是登录时的账号密码,自己设置
不过我没找到MINIO_ROOT_USER和MINIO_ROOT_PASSWORD的配置要求,我想配置密码123456、minio都不行,所以如下配置
vim /etc/default/minio
MINIO_ROOT_USER=minio
MINIO_ROOT_PASSWORD=minioadmin
MINIO_VOLUMES="/mnt/data"
MINIO_OPTS="--console-address :9001"
需要手动创建这个配置的MINIO_VOLUMES文件夹,并授权给 minio-user 用户
在文档第二步的文件里说明了
minio-user 这个用户的身份和权限来运行Minio进程
默认创建的文件夹是root用户,所以要配置
sudo mkdir -p /mnt/data
sudo useradd -r -s /sbin/nologin minio-user
sudo chown -R minio-user:minio-user /mnt/data
sudo chmod -R 755 /mnt/data
重新加载配置
sudo systemctl daemon-reload
启动MinIO服务

在本地主机上发出以下命令来启动 MinIO SNSD 部署即服务:
sudo systemctl start minio.service
使用以下命令确认服务是否在线和功能正常:
sudo systemctl status minio.service
journalctl -f -u minio.service
开机自启
sudo systemctl enable minio.service
连接到MinIO服务
<ip>:9001/login
登录MinIO的用户名和密码配置参数为 MINIO_ROOT_USER 和 MINIO_ROOT_PASSWORD
这些配置可以在在容器指定的环境文件中进行修改

其他
(3 封私信 / 52 条消息) Minio开始割开源的韭菜了? - 知乎
MinIO 社区版在 2025 年 5 月 24 日的更新中移除了 Web 管理控制台功能
重启开源:MinIO 社区复活版全功能回来了_ITPUB博客
官方转向商业版,社区复活版的诞生
MinIO概念
066-尚庭公寓-开发准备-技术储备-MinIO-概述_哔哩哔哩_bilibili
对象存储服务存储非架构化的数据,可以存储图片
MioIO是开源项目,还有很多商业版的对象存储,比如阿里云的OSS,华为云的OBS,百度云的BOS
OSS等是云存储,本地没有数据,minio是本地存储,上传的数据数据都在本地保存着

管理页面操作
普用用户可以进行文件上传、文件查看、文件下载等操作
管理员可以进行桶管理、权限管理、用户管理等
创建bucket
要想上传文件,要先有一个bucket
- Versioning,可以进行版本管理,便于数据恢复
- Object Locking,对象锁,可以避免对象被删除
- Quota,用于限制桶当中数据的大小

上传文件
可以查看所有桶及桶的对象

点进去可以上传文件,也可以上传目录

删除文件
可以下载、分享、预览、删除等

http访问
对象的url有两部分,一部分是对象存储服务的endpoint(端点),另一部分是对象的绝对路径
端点:这里是api的端口9000,即http://<虚拟机ip>:9000
绝对路径:桶相当于一级路径,后面是文件名

报错AccessDenied
报错了,AccessDenied,访问被拒绝,这是权限问题

调整访问权限
Private:只允许桶的所有者对该桶进行读写
Public:允许所有人对该桶进行读写
Custom:自定义访问权限
自定义访问权限
非官方文档:
How to Implement MinIO Bucket Policies

Effect:决定是"允许"还是"拒绝"访问
Action:指定允许或拒绝哪些具体的 S3 API 操作
格式: "s3:操作名称",可以使用 * 表示所有操作
Resource: 指定策略应用到哪些存储桶或对象上
格式: "arn:aws:s3:::桶名/对象路径"
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": [
"*"
]
},
"Action": [
"s3:GetObject"
],
"Resource": [
"arn:aws:s3:::<桶名/对象路径,如test/*>"
]
}
]
}
sdk(依赖)
068-尚庭公寓-开发准备-技术储备-MinIO-Java客户端_哔哩哔哩_bilibili
官网:
Java快速指南 — MinIO中文文档 | MinIO Linux中文文档
有maven导入依赖和案例

更多推荐








所有评论(0)