MinIo简单入门和使用

微服务中,采用MinIo作为文件分布式存储,对文件的上传,下载做统一管理
 
MinIo有两个重要的对象,服务器minio.exe和客户端minio.client。搭建服务器用于接收文件信息,客户端用于上传文件。
 
大致步骤如下:
1.创建Minio服务器 minIo.exe
首先下载minio.exe,我们以Windows为例,其他系统可在MinIo官网中找到下载地址:
下载并安装,在安装后的目录下,输入cmd命令,如:minio.exe server D:minioserver
配置成功后如下图所示:

 其中 accesskey是账号,secrectkey是密码,用于登陆 http://127.0.0.1:9000

2.用户名和密码设置
在安装目录下的.minio.sys》config文件,可修改两个Key值
 
3.上传文件
(1)创建客户端
1 var endpoint = "127.0.0.1:9000"; 
2 var accessKey = "GD4O6PLLR22K8DK99P2O"; 
3 var secretKey = "+rrx00RyANjyoV7XAwt8oEvi3KSgVq30wnpYqjCS"; 
4 var minioclient = new MinioClient(endpoint, accessKey, secretKey); var location = "us-east-1";
(2)创建文件桶 MakeBuketAsync
每个文件都需要存储到对应的bucket中,如果没有,需要创建bucketName
1 bool found = await minioclient.BucketExistsAsync(bucketName); 
2 if (!found) 
3 { 
4     await minioclient.MakeBucketAsync(bucketName, location); 
5 }
(3)上传文件 PutobjectAysnc
await minioclient.PutObjectAsync(bucketName, FileId, formFile.OpenReadStream(), formFile.Length, formFile.ContentType);
 
4.预览或下载文件 PresignedGetObjectAsync
返回打开的地址,最久有效期7天,可自行配置
await minioclient.PresignedGetObjectAsync(bucketName, FileId, 60 * 60 * 24);
MinIo还有例如断点续传,支持集群,高性能读写等优势,后续深入会继续更新
 
以上,仅用于学习和总结!

原文地址:https://www.cnblogs.com/ywkcode/p/15161968.html