Minio文档服务安装部署和springboot引入minio使用【windows】
一、下载安装minio
1.下载minio
可以自行官网下载(此处说明:官网只有最新版本,本人实测,新版本minio非常非常难用,界面一大堆,实在是看不懂,所以我用的是以前202104版本)
中文官网:http://www.minio.org.cn/
英文官网:https://min.io/
或百度云下载202104版本(老版本好用):https://pan.baidu.com/s/1MK62_Eh8rBUXVoIpmwRl8Q 提取码: 6fjx
2.创建目录
创建bin(将下载下来的minio.exe移入)、data(minio数据目录)文件夹;

3.编写bat启动脚本(minio.exe和传统exe有点不一样,无法双击安装)
bin目录下创建miniostart.bat,粘贴以下内容进去
@echo off
echo.
echo MinIO Server
echo.
title minio
set MINIO_PATH=C:\tools\minio\202104\bin\minio.exe
set DATA_PATH=C:\tools\minio\202104\data
set MINIO_ROOT_USER=minioadmin
set MINIO_ROOT_PASSWORD=minioadmin
echo MinIO server Starting...
%MINIO_PATH% server %DATA_PATH% --address :9001
pause
注意MINIO_ROOT_USER 和MINIO_ROOT_PASSWORD是预设的账号和密码;
–address :9001 是端口,自己可以根据实际自己改相应端口(默认端口是9000)
双击bat启动后

3.访问界面
输入 http://ip:port/
就可以访问

输入预设的账户密码登录后,就可以在里面上传文件等操作了

二、springboot项目引入使用minio
1.pom引入minio包(minio.exe版本不同,引入包版本不同,因为minio这几年变化很大,不知道具体对应包的可以去https://mvnrepository.com/ 搜看对应的时间的版本)
我这里对应版本8.2.1
<!-- 文档服务minio -->
<dependency>
<groupId>io.minio</groupId>
<artifactId>minio</artifactId>
<version>8.2.1</version>
</dependency>
2.yml中加入配置
minio:
enabled: true
url: http://localhost:9001
accessKey: minioadmin
secretKey: minioadmin
3.注入bean 使用MinioClient
这时候soffice文件出来了
import io.minio.MinioClient;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Component;
@Component
@Configuration
@ConditionalOnProperty(name = { "minio.enabled" }, matchIfMissing = false)
public class MinIoConfig {
@Value("${minio.url}")
private String url;
@Value("${minio.accessKey}")
private String accessKey;
@Value("${minio.secretKey}")
private String secretKey;
/**
* 注入minio 客户端
*
* @return
*/
@Bean
public MinioClient minioClient() {
return MinioClient.builder().endpoint(url).credentials(accessKey, secretKey).build();
}
}
4.编写MinioUtil
import cn.hutool.core.codec.Base64Encoder;
import cn.hutool.core.io.FastByteArrayOutputStream;
import com.uniwill.common.core.id.IdUtil;
import io.minio.*;
import io.minio.http.Method;
import io.minio.messages.Bucket;
import io.minio.messages.DeleteError;
import io.minio.messages.DeleteObject;
import io.minio.messages.Item;
import org.apache.commons.lang3.time.DateFormatUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
import org.springframework.web.multipart.

最低0.47元/天 解锁文章
1万+






