本文主要分享了如何搭建一个类似阿里云OSS的对象存储服务器。
以windows环境下MinIO的搭建举例说明,linux环境下的搭建网上也有很多教程,请自行搜索相关资料。
一、下载
下载minio.exe即可( 注意不要直接双击打开,会运行失败)
二、部署
在minio.exe同级目录创建目录/data用于存储数据文件
cmd命令:minio.exe server data
1.验证是否启动成功,访问: http://localhost:9000(用户名/密码:minioadmin/minioadmin)

2.登录成功后看到以下界面

三、使用
1.创建bucket,名称建议有区分度(程序中可以根据不同应用、不同环境建立不同的bucket)

MinIO的数据会存储在刚才启动命令中指定的/data目录

2.应用程序账号,使用Identity->Service Accounts功能(当然应用程序也可以使用Users来认证)

请记录好Access Key和Secret Key,用于应用程序的认证
3.如果需要使用子账号,使用Identity->Users功能

4.如果需要实现图片的访问是开放的,但是上传图片必须要有访问控制,可以利用bucket的Access Policy来实现

选择Custom选项,json内容填写如下

四、springboot整合MinIO
1.pom依赖
<dependency>
<groupId>io.minio</groupId>
<artifactId>minio</artifactId>
<version>7.1.4</version>
<!-- 8.0.x版本会报错:Unsupported OkHttp library found. Must use okhttp >= 4.8.1 -->
</dependency>
2.初始化MinIO客户端核心代码

3.文件上传核心代码

如果需要按照目录来存储文件,objectName可以使用folder1/folde2/../333.jpg这样的格式
4.文件上传后获取访问链接核心代码

5.执行完上传代码,就可以获取到以下格式的图片地址
怎么样?如果你觉得有用的话,还不快快收藏起来!!!
附:涉及的代码目录
springcloud-template
└── template-web
└── file
└── alioss-- 阿里云实现的OSS存储
└── minio -- MinIO实现的OSS存储
版权声明:本文为w13528476101原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。