MinIO基础配置及应用-.net 8
MinIO是一种常见的对象存储的服务器,可以用来搭建网盘等服务。在本人配置MinIO环境时遇到过一些问题,在此处记录以下配置过程。
本次配置使用docker进行。
1.在电脑上安装和配置docker(我的服务器电脑是deepin系统,上面安装了宝塔面板)
具体安装步骤在网上搜索即可,deepin官方有个wiki,里边有安装docker的教程,可以参考配置。
2.执行以下命令
sudo docker run --name minio --restart=always \ -p 9000:9000 -p 9090:9090 \ -e "MINIO_ROOT_USER=minio" -e "MINIO_ROOT_PASSWORD=admin123456" \ -v /data/minio/data:/data \ -v /data/minio/conf:/root/.minio -d minio/minio server /data --console-address ":9090" -address ":9000"
注意
(1)环境变量部分,在其他比较老的教程当中可能不是这两个名字(旧的名字已经被弃用了),为了和minio官方示例保持一致,此处采用比较新的名字,这两个环境变量分别代表用户名和密码,下文要使用。
(2)也可以将其改写为docker compose的yaml配置文件,均可,此处为方便使用docker cli直接创建
(3)其实也可以配置MINIO_ACCESS_KEY和MINIO_SECRET_KEY这两个环境变量(虽然不太建议),如果在启动时配置了这两个环境变量,那么后续可以不用生成access_key和secret_key可以直接在创建minioClient时使用这两个环境变量(MINIO_ACCESS_KEY和MINIO_SECRET_KEY)的值作为传入的参数。
3.启动起来服务之后,看docker容器的日志:
圈出的部分就是webapi和浏览器界面的地址,之后所有的配置都要以此处为准
4.浏览器访问浏览器界面的地址,输入用户名和密码(在前面的docker命令行当中配置的),进入如下界面
(不要管已经有的buckets,这是我之前创建的,初次启动时此处应该没有)
5.进入AccessKey,生成access key和secret key,生成后一定要点击保存
注意此处生成的secret key要妥善保存,因为只会显示一次
如果在启动的时候配置了MINIO_ACCESS_KEY和MINIO_SECRET_KEY这两个环境变量,则可以省略这一步
6.创建.net项目进行测试
此处创建一个console app,注意要引用MinIO的nuget包
程序只作为测试目的,写的不好,请谅解。
using Minio; using Minio.DataModel.Args;
// 上文当中创建的access key和scret key,如果在环境变量当中配置,则填入环境变量配置的值 var accessKey = "XZSwBUSkveQ30cgZtsRQ"; var secretKey = "NNMeE1SNdHkErLNLCrbKSuEx5qmWX9zlBafwP8qt"; var minioClient = new MinioClient() .WithEndpoint("10.4.108.114:9000")// 填webapi接口地址 .WithCredentials(accessKey, secretKey) .WithSSL(false) .Build(); // 创建桶 var makeArg = new MakeBucketArgs().WithBucket("abc123"); await minioClient.MakeBucketAsync(makeArg);
// 上传文件 PutObjectArgs putObjectArgs = new PutObjectArgs() .WithBucket("abc123") .WithObject("test.pdf") .WithFileName("D:\\编译原理.pdf"); await minioClient.PutObjectAsync(putObjectArgs);
7.执行完后,可以打开
会发现文件已经上传。
在本人第一次配置minio时,曾经遇到过.net一直出异常<Error xmlns="...">,这是因为在创建access key和secret key后没有点create(本人眼瞎)
posted on 2024-09-08 12:13 Panzergrenadiere 阅读(367) 评论(0) 收藏 举报