SpringBoot集成Minio搭建自己的分布式文件服务器(Minio安装篇)

目录

1.创建挂载目录

2.查询镜像

3.拉取镜像

4.启动容器

5.访问

6.使用

1.创建挂载目录

cd /usr/local
mkdir minio
cd minio
mkdir data
mkdir config

2.查询镜像

docker search minio

3.拉取镜像

docker pull minio/minio

4.启动容器

docker run -d -p 9002:9000 --name minio \
-e "MINIO_ACCESS_KEY=minio" \
-e "MINIO_SECRET_KEY=minio123" \
-v /usr/local/minio/data:/data \
-v /usr/local/minio/config:/root/.minio \
minio/minio server /data

5.访问

这里API后面的地址是9000端口,console也就是控制台地址的端口是44079,而且最后一句WARNING有提示,控制台端口是动态生成的,请使用命令选择一个静态端口,意思就是如果重启了,那么这个控制台的端口又会发生改变,如果是要使用静态端口就是使用下面的命定启动minio,这样访问控制台的时候就是使用指定的端口访问就行

docker run -d -p 9002:9000 -p 9090:9090 --name minio \
-e "MINIO_ACCESS_KEY=minio" \
-e "MINIO_SECRET_KEY=minio123" \
-v /usr/local/minio/data:/data \
-v /usr/local/minio/config:/root/.minio \
minio/minio server /data --console-address ":9090"

主界面

6.使用

进入后台后便可以简单使用minio上传文件、预览、分享URL等功能。 Bucket概念,可以理解为存放鸡蛋的篮子(即存放文件的目录)。

 这几个地方是创建目录,上传下载等功能,感兴趣的可以自己去探索探索

下一节我们将介绍springboot集成minio

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
在Spring Boot中集成Minio实现文件批量下载的方法如下: 1. 首先,确保已经在Spring Boot项目中引入了Minio的依赖。可以在`pom.xml`文件中添加以下依赖: ```xml <dependency> <groupId>io.minio</groupId> <artifactId>minio</artifactId> <version>8.0.6</version> </dependency> ``` 2. 在Spring Boot的配置文件中配置Minio的连接信息。可以在`application.properties`或`application.yml`文件中添加以下配置: ```yaml minio: url: http://localhost:9000 access-key: your-access-key secret-key: your-secret-key bucket-name: your-bucket-name ``` 请将`your-access-key`、`your-secret-key`和`your-bucket-name`替换为实际的Minio连接信息。 3. 创建一个文件下载的Controller,用于处理文件下载的请求。可以创建一个`FileController`类,并添加以下代码: ```java import io.minio.MinioClient; import io.minio.GetObjectArgs; import io.minio.errors.MinioException; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.core.io.InputStreamResource; import org.springframework.http.HttpHeaders; import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.InputStream; import java.net.URLEncoder; @Controller public class FileController { @Autowired private MinioClient minioClient; @GetMapping("/download/{filename}") public ResponseEntity<InputStreamResource> downloadFile(@PathVariable("filename") String filename, HttpServletResponse response) throws IOException { try { InputStream inputStream = minioClient.getObject( GetObjectArgs.builder() .bucket("your-bucket-name") .object(filename) .build() ); HttpHeaders headers = new HttpHeaders(); headers.setContentType(MediaType.APPLICATION_OCTET_STREAM); headers.setContentDispositionFormData("attachment", URLEncoder.encode(filename, "UTF-8")); return ResponseEntity.ok() .headers(headers) .body(new InputStreamResource(inputStream)); } catch (MinioException e) { // 处理Minio异常 e.printStackTrace(); response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR); return null; } } } ``` 请将`your-bucket-name`替换为实际的Minio存储桶名称。 4. 启动Spring Boot应用程序,并访问`/download/{filename}`接口来下载文件。将`{filename}`替换为实际要下载的文件名。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

代码搬运工阿新

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值