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.启动起来服务之后,看docker容器的日志:
圈出的部分就是webapi和浏览器界面的地址,之后所有的配置都要以此处为准
4.浏览器访问浏览器界面的地址,输入用户名和密码(在前面的docker命令行当中配置的),进入如下界面
(不要管已经有的buckets,这是我之前创建的,初次启动时此处应该没有)
5.进入AccessKey,生成access key和secret key,生成后一定要点击保存
注意此处生成的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(本人眼瞎)
标签:配置,MinIO,-.,key,docker,data,net,minio From: https://www.cnblogs.com/runkai/p/18402714