Mino文件服务器

2 篇文章 0 订阅

一、docker搭建mino【官方文档

1、查询镜像

docker search minio

2、下载镜像

docker pull minio/minio ###注,此处尽量下载排行第一镜像

3、运行镜像

docker run -d 
-p 9000:9000 ## 映射端口
-e MINIO_ACCESS_KEY=admin ##账号
-e MINIO_SECRET_KEY=12345678  ##密码,不得低于8位
-v /mnt/data:/data minio/minio server /data ##数据挂载位置

4、访问

http://xxx.xxx.xxx.xxx:9000/  ##输入账号名

二、Java基础应用

1、初始化Minio对象

String endpoint = "http://ip:9000";
String accessKey = "admin";
String secretKey = "12345678";
String bucketName = "test";
//初始化minio对象
MinioClient minioClient = new MinioClient(endpoint,accessKey,secretKey);

2、创建、检查bucket是否存在

// Check if the bucket already exists.检查bucket是否存在
boolean isExist = minioClient.bucketExists(bucketName);
if(isExist) {
    System.out.println(bucketName+"Bucket already exists.");
} else {
    // Make a new bucket called test to hold a zip file of photos.
    //创建一个名为test的存储桶,用于存储照片文件夹。
    minioClient.makeBucket(bucketName);
}

3、上传照片

## 文件路径上传,options可以直接置为null
String objectName = "316f2c4b2d0551626e47240f9e583b03.jpg";
String filePath = "F:\\data\\images\\cat\\316f2c4b2d0551626e47240f9e583b03.jpg";
minioClient.putObject(bucketName,objectName,filePath,null);

## 文件流上传
FileInputStream fileInputStream = new FileInputStream(filePath);
PutObjectOptions options = new PutObjectOptions(fileInputStream.available(), -1);
options.setContentType("image/png");
minioClient.putObject(bucketName,objectName,fileInputStream,options);

4、下载图片

## 获取图片流并下载
InputStream downloadInputStream  = minioClient.getObject(bucketName,objectName);

File outputFile = new File("C:\\Users\\amidn\\Pictures\\"+objectName);
FileUtils.copyInputStreamToFile(downloadInputStream,outputFile);

5、获取访问时效访问url

String url =  minioClient.presignedGetObject(bucketName,objectName,60*60*24);

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值