获取 MinIO 存储端点的快速指南
MinIO 是一个开源的对象存储服务,兼容Linux 和 Windows 安装 MinIO,以及在 Java 中使用 MinIO 的方法。通过这篇文章,您将了解如何获取 MinIO 存储端点,安装和使用 MinIO 进行文件存储和管理。
1、简介
MinIO 是一个基于 Apache License v2.0 开源协议的 对象存储服务,兼容亚马逊 S3 云存储服务接口,非常适合存储大容量的 非结构化 数据,如图片、视频、日志文件、备份数据和容器/虚拟机镜像等。一个对象文件可以从几 KB 到最大 5T。MinIO 是一个非常轻量的服务,可以轻松与其他应用结合,如 NodeJS、Redis 或 MySQL。
2、容器安装
MinIO 可以作为容器运行,适合早期开发和评估。某些功能,如版本控制、对象锁定和存储桶复制需要分布式部署 MinIO。
2.1、Docker
docker run -p 9000:9000
--name minio1
-v /mnt/data:/data
-e "MINIO_ROOT_USER=AKIAIOSFODNN7EXAMPLE"
-e "MINIO_ROOT_PASSWORD=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
minio/minio server /data
2.2、Linux
wget https://dl.min.io/server/minio/release/linux-amd64/minio
chmod +x minio
./minio server /data
2.3、Windows
下载:
http://dl.minio.org.cn/server/minio/release/windows-amd64/minio.exe
启动:
minio.exe server D:
将“D:”替换为 MinIO 存储数据的路径。启动成功示意图
3、使用说明
3.1 访问地址
访问 MinIO 的地址为 http://{ip}:{port}/minio/ 或 http://{ip}:{port}。默认的 root 凭据为 minioadmin:minioadmin。访问界面示例
3.2 创建和管理
创建 Buckets
创建存储桶用于存储和管理对象。创建界面示例
上传文件
通过浏览器直接上传文件至 MinIO。上传文件示例
访问权限
若访问受限,可通过自定义 JSON 字符串设置访问权限。
{
"Statement": [
{
"Action": "s3:GetObject",
"Effect": "Allow",
"Principal": "*",
"Resource": "arn:aws:s3:::lease/*"
}
],
"Version": "2012-10-17"
}
4、JAVA 使用 MinIO 的方法
通过 Java 代码操作 MinIO,可以创建存储桶并上传文件。
4.1 添加依赖
io.minio
minio
7.1.0```
### 4.2 参数配置
配置 MinIO 的参数:Endpoint、Access Key 和 Secret Key。
### 4.3 编写 MinIO 配置信息
```java
@Configuration
@ConfigurationProperties(prefix = "minio")
@ConditionalOnClass({MinioClient.class})
@ConditionalOnProperty({"minio.endpoint"})
public class MinioAutoConfiguration {
// 配置代码省略
}
4.4 上传文件代码
public static String uploadFile(InputStream inputStream, String objectName, String fileName) {
// 上传代码省略
}
4.5 调用上传方法
@PostMapping("/upload")
@ApiOperation("上传文件")
public String upload(@RequestPart(value = "file") MultipartFile file) throws IOException {
return MinioUtil.uploadFile(file.getInputStream(), "my-file", file.getOriginalFilename());
}
4.6 测试
成功上传文件后返回可访问的 URL。测试界面示例
附工具类
提供了 MinIO 的工具类代码,支持文件上传、下载、删除等操作。
FAQ
问:MinIO 是什么?
- 答:MinIO 是一个基于 Apache License v2.0 开源协议的对象存储服务,兼容亚马逊 S3 云存储服务接口,非常适合存储大容量的非结构化数据,如图片、视频、日志文件、备份数据和容器/虚拟机镜像等。
问:如何在 Docker 中安装 MinIO?
-
答:可以使用以下命令在 Docker 中安装 MinIO: “`shell
docker run -p 9000:9000
–name minio1
-v /mnt/data:/data
-e "MINIO_ROOT_USER=AKIAIOSFODNN7EXAMPLE"
-e "MINIO_ROOT_PASSWORD=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
minio/minio server /data
### 问:如何在 Windows 上运行 MinIO?
- 答:首先下载 MinIO 可执行文件,然后通过命令 minio.exe server D: 启动 MinIO,将 “D:” 替换为 MinIO 存储数据的路径。
### 问:如何访问 MinIO 的存储端点?
- 答:可以通过 http://{ip}:{port}/minio/ 或 http://{ip}:{port} 访问 MinIO 的存储端点,默认的 root 凭据为 minioadmin:minioadmin。
### 问:如何通过 Java 使用 MinIO 上传文件?
- 答:首先添加 MinIO 的 Maven 依赖,然后配置 MinIO 的参数(如 Endpoint、Access Key 和 Secret Key),编写上传文件的 Java 代码,并调用相应的方法来上传文件。
热门API
- 1. AI文本生成
- 2. AI图片生成_文生图
- 3. AI图片生成_图生图
- 4. AI图像编辑
- 5. AI视频生成_文生视频
- 6. AI视频生成_图生视频
- 7. AI语音合成_文生语音
- 8. AI文本生成(中国)
最新文章
- 9个最佳Text2Sql开源项目:自然语言到SQL的高效转换工具
- 深入解析API网关策略:认证、授权、安全、流量处理与可观测性
- GraphQL API手册:如何构建、测试、使用和记录
- 自助式入职培训服务API:如何让企业管理更上一层楼?
- Python如何调用Jenkins API自动化发布
- 模型压缩四剑客:量化、剪枝、蒸馏、二值化
- 火山引擎如何接入API:从入门到实践的技术指南
- 为什么每个使用 API 的大型企业都需要一个 API 市场来增强其合作伙伴生态系统
- 构建更优质的API:2025年顶级API开发工具推荐 – Strapi
- 外部函数与内存API – Java 22 – 未记录
- FAPI 2.0 深度解析:下一代金融级 API 安全标准与实践指南
- .NET Core 下的 API 网关