手把手教你搭建一个文件存储服务器minio,实现文件存储
卖萌控的博客
点击这里进入电脑版页面!体验更好
手把手教你搭建一个文件存储服务器minio,实现文件存储
2024-4-27 萌小白


Minio是一个开源的、自托管的对象存储服务器,它提供了类似于云存储服务的功能。你可以使用Minio搭建自己的私有云存储解决方案,或者作为公共存储服务的替代方案。



安装



官网:https://min.io/download



根据官网内容进行安装即可。笔者采用windos 本地安装的方式






安装好后就能看到账号和密码了。默认的为 miniadmin 登录地址为:http://127.0.0.1:9001/



默认的管理控制台端口是9001 客户端的请求的端口是9000



PS> setx MINIO_ROOT_USER admin



PS> setx MINIO_ROOT_PASSWORD 123456 ps> minio.exe server D:\minio\Data --console-address ":9001"









知识点



使用


最简单的办法参考Asp.Net Core
5.0/6.0对象储存扩展包,支持Minio自建对象储存、阿里云OSS、腾讯云COS、七牛云Kodo。支持OSS常规操作,比如储存桶创建,删除、对象上传、下载、生成签名URL等。支持.NET
5/6,也推荐升级至.NET 5/6.



DotNet官方示例 static void Main(string[] args)



{



var endpoint = "play.min.io";



var accessKey = "Q3AM3UQ867SPQQA43P2F";



var secretKey = "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG";



try



{



var minio = new MinioClient



.WithEndpoint(endpoint)



.WithCredentials(accessKey, secretKey)



.WithSSL



.Build;



FileUpload.Run(minio).Wait;



}



catch (Exception ex)



{



Console.WriteLine(ex.Message);



}



Console.ReadLine;



}



// File uploader task.



private async static Task Run(MinioClient minio)



{



var bucketName = "mymusic";



var location = "us-east-1";



var objectName = "0.png";



var filePath = "C:\\Users\\Pride\\Pictures\\0.png";



//var contentType = "application/zip";



try



{



// 在服务器上创建一个bucket(如果还没有)。



var beArgs = new BucketExistsArgs



.WithBucket(bucketName);



//是否存在bucket



bool found = await minio.BucketExistsAsync(beArgs).ConfigureAwait(false);



if (!found)



{



var mbArgs = new MakeBucketArgs



.WithBucket(bucketName);



await minio.MakeBucketAsync(mbArgs).ConfigureAwait(false);



}



//上传文件到bucket。



var putObjectArgs = new PutObjectArgs



.WithBucket(bucketName)



.WithObject(objectName)



.WithFileName(filePath);



//.WithContentType(contentType);



var res= await minio.PutObjectAsync(putObjectArgs).ConfigureAwait(false);



Console.WriteLine("Successfully uploaded " + objectName);



}



catch (MinioException e)



{



Console.WriteLine("File Upload Error: {0}", e.Message);



}



}



上传成功



直接访问就是失败






发表评论:
昵称

邮件地址 (选填)

个人主页 (选填)

内容