论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
IT评测·应用市场-qidao123.com
»
论坛
›
备份容灾
›
备份
›
非常钟教你Docker安装minio,搭建自己的oss服务器 ...
非常钟教你Docker安装minio,搭建自己的oss服务器
饭宝
论坛元老
|
2024-8-25 14:22:18
|
显示全部楼层
|
阅读模式
楼主
主题
1032
|
帖子
1032
|
积分
3096
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
一、熟悉minio
Minio 是一个基于开源协议的云存储服务,首先,Minio 的开源性质是其一大亮点。这意味着开辟者和企业可以自由获取其源代码,并根据自身的需求进行定制和改进。这种开放性不光低落了使用资本,还促进了技术的创新和社区的活跃发展。
在性能方面,Minio表现精彩。它可以或许快速处置处罚大量的数据读写哀求,无论是小型项目中的少量数据,还是大型企业中的海量数据,Minio 都能游刃有余。比如说,在一个拥有高并发访问的在线教诲平台上,Minio 可以确保门生们可以或许快速加载课程视频和资料,不会因为数据访问的耽误而影响学习体验。
Minio 的可扩展性更是令人印象深刻。当业务不断增长,数据量急剧增加时,只需简单地添加服务器节点,就可以或许轻松实现存储容量和性能的线性扩展。这就好比为不断扩张的都会修建更多的道路,以确保交通的顺畅。
别的,Minio 对多种操作系统的支持,使其具有广泛的实用性。无论您是在 Windows 环境下进行开辟,还是在 Linux 服务器上部署应用,Minio 都能完美兼容,为您提供稳固可靠的数据存储服务。
二、部署minio
检察当前docker支持的minio版本
docker search minio
复制代码
这里我们选择官方的mionio
docker pull minio/minio
复制代码
启动并设置干系环境
docker run -p 9000:9000 -p 9090:9090 \
--name minio \
-d --restart=always \
-e "MINIO_ACCESS_KEY=admin" \
-e "MINIO_SECRET_KEY=123" \
-v /mydata/minio/data:/data \
minio/minio server \
/data --console-address ":9090" -address ":9000"
复制代码
注:端口9000是api地址,9090是背景管理界面地址,账号暗码、映射文件地址可以更改。
启动后,访问机器ip+9090,进入minio的界面,输入用户名或暗码后可以访问。
进入以后,我们在图中位置新建一个bucket,然后可以往其中新存入一张图片作为测试
三、整合Springboot
1、添加依赖
<dependency>
<groupId>io.minio</groupId>
<artifactId>minio</artifactId>
<version>8.2.0</version>
</dependency>
复制代码
2、创建minioConfig设置类
@Configuration
public class MinioConfig {
/**
*minio url
*/
@Value("${minio.url}")
private String url;
/**
*minio账户
*/
@Value("${minio.accessKey}")
private String accessKey;
/**
* minio暗码
*/
@Value("${minio.secretKey}")
private String secretKey;
/**
* 构建 minioClient
* @return
*/
@Bean
public MinioClient getMinioClient(){
return MinioClient.builder().endpoint(url).credentials(accessKey,secretKey).build();
}
3、设置application.yml
server:
port: 4000
minio:
url: http://服务器地址:9000
accessKey: admin
secretKey: 123456
复制代码
4、然后写一个util类为我们提供一些业务方法
@Component
public class MinioUtil {
@Resource
private MinioClient minioClient;
/**
* 列出所有桶
*/
public List<String> getAllBucket() throws Exception {
List<Bucket> buckets = minioClient.listBuckets();
return buckets.stream().map(Bucket::name).collect(Collectors.toList());
}
复制代码
}
5、最后我们通过一个controller接口来测试一下我们是否可以或许访问到我们刚刚所上传的图片
@RestController
public class FileController {
@Resource
private MinioUtil minioUtil;
@RequestMapping("/testGetAllBuckets")
public String testGetAllBuckets() throws Exception {
List<String> bucket = minioUtil.getAllBucket();
return bucket.get(0);
}
}
复制代码
至此,一个简单的spring boot整合minio的demo案例已经搭建完成啦,而且大家也拥有了属于自己的oss对象存储服务器
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
饭宝
论坛元老
这个人很懒什么都没写!
楼主热帖
53基于java的资源博客论坛系统设计与实 ...
zotero+坚果云实现多pc端及iPad同步管 ...
Android——一个简单的记账本APP ...
天涯神贴合集500篇(2023最新) ...
需求:清空三个月前的操作日志,并生成 ...
面试官:@Configuration 和 @Component ...
nginx 常用指令配置总结
【分布式计算】学习笔记(期末复习) ...
Python潮流周刊#5:并发一百万个任务要 ...
企业级数据治理工作怎么开展?Datahub ...
标签云
AI
运维
CIO
存储
服务器
浏览过的版块
linux
快速回复
返回顶部
返回列表