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)    收藏  举报

导航