minio使用方法

一、基本介绍

MinIO 是一种高性能、S3 兼容的对象存储。
它专为大规模 AI/ML、数据湖和数据库工作负载而构建,并且它是由软件定义的存储。
不需要购买任何专有硬件,就可以在云上和普通硬件上拥有分布式对象存储。
MinIO拥有开源 GNU AGPL v3 和商业企业许可证的双重许可。
官网:https://www.minio.org.cn
特点:

  • 简单

简单性是百万兆次级数据基础设施的基础 - 无论是在技术上还是在操作上。MinIO使用和部署非常简单,没有其他对象存储可以让您在最快的时间内实现下载到生产环境的部署。

  • 高性能

MinIO 是世界上最快的对象存储,没有之一。在 32 个 NVMe 驱动器节点和 100Gbe 网络上发布的 GET/PUT 结果超过 325 GiB/秒和 165 GiB/秒。

  • Kubernetes原生支持

通过原生 Kubernetes 运营商集成,MinIO 支持公共云、私有云和边缘云上所有主要的 Kubernetes 发行版。

二、安装方法

本文提供Windows和linux安装方法。

1.Windows安装

  1. 下载安装包
    地址:https://dl.min.io/server/minio/release/

  2. 进入到Monio所在目录,启动Minio
    启动命令: minio.exe server 数据文件目录
    image-20230801200406171.png
    默认用户名和密码都是minioadmin

2.Linux安装

Linux中选择使用docker进行安装,具体命令如下:

  1. 拉取镜像
docker pull quay.io/minio/minio
  1. 创建数据存储目录
mkdir -p ~/minio/data
  1. 创建minio
docker run -d \
   --name c_minio \
   -p 9000:9000 \
   -p 9090:9090 \
   -v ~/minio/data:/data \
   -e "MINIO_ROOT_USER=minioadmin" \
   -e "MINIO_ROOT_PASSWORD=minioadmin" \
   quay.io/minio/minio server /data --console-address ":9090"

三、使用

访问控制台:
windows本地安装:http://127.0.0.1:9000/login
linux虚拟机安装:http://虚拟机ip:9000/login
image.png

image.png
在这里我们可以创建一个新的bucket,即可正常使用

在Spring Boot中使用MinIO可以通过以下几个步骤: 1. 引入MinIO的依赖:在`pom.xml`文件中添加MinIO的依赖。 ```xml <dependency> <groupId>io.minio</groupId> <artifactId>minio</artifactId> <version>RELEASE.2021-03-03T02-57-17Z</version> </dependency> ``` 2. 配置MinIO连接信息:在`application.properties`或`application.yml`文件中添加MinIO的连接信息。 ```properties # MinIO服务器的连接地址 minio.endpoint=http://localhost:9000 # MinIO服务器的访问密钥 minio.accessKey=minio-access-key # MinIO服务器的访问密钥 minio.secretKey=minio-secret-key ``` ```yaml minio: endpoint: http://localhost:9000 accessKey: minio-access-key secretKey: minio-secret-key ``` 3. 创建MinIO客户端:在Spring Boot的配置类中创建MinIO客户端的Bean。 ```java import io.minio.MinioClient; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @Configuration public class MinioConfig { @Value("${minio.endpoint}") private String endpoint; @Value("${minio.accessKey}") private String accessKey; @Value("${minio.secretKey}") private String secretKey; @Bean public MinioClient minioClient() { return MinioClient.builder() .endpoint(endpoint) .credentials(accessKey, secretKey) .build(); } } ``` 4. 使用MinIO进行文件上传和下载:在需要使用MinIO的地方注入MinIO客户端,然后使用MinIO客户端的方法进行文件上传和下载操作。 ```java import io.minio.MinioClient; import io.minio.UploadObjectArgs; import io.minio.GetObjectArgs; @Service public class MinioService { private final MinioClient minioClient; public MinioService(MinioClient minioClient) { this.minioClient = minioClient; } public void uploadFile(String bucketName, String objectName, InputStream inputStream, long size, String contentType) throws Exception { minioClient.uploadObject( UploadObjectArgs.builder() .bucket(bucketName) .object(objectName) .stream(inputStream, size, -1) .contentType(contentType) .build()); } public InputStream downloadFile(String bucketName, String objectName) throws Exception { return minioClient.getObject( GetObjectArgs.builder() .bucket(bucketName) .object(objectName) .build()); } // 其他操作... } ``` 这样就可以在Spring Boot中使用MinIO进行文件的上传和下载了。你可以根据具体的需求,进一步扩展MinIO的功能,例如创建、删除、列举存储桶等操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

开始摆烂ing

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值