docker安装minio,java上传文件

1.搜索minio镜像

docker search minio

2.拉取镜像

docker pull minio/minio

3.运行minio容器

docker run -p 19000:19000 -p 19001:19001 \
 --name minio \
 -d --restart=always \
 -e "MINIO_ACCESS_KEY=root" \
 -e "MINIO_SECRET_KEY=12345678" \
 -v /mydata/minio/data:/data \
 minio/minio server \
 /data --console-address ":19001" -address ":19000"

#命令介绍
#-e "MINIO_ACCESS_KEY=root"   登录用户这里写的root
#-e "MINIO_SECRET_KEY=12345678"  登录密码这里写的12345678
# /data --console-address ":19001"控制台访问端口 -address ":19000"代码上传端口
#

4.访问控制台,输入上面写的用户和密码

http://192.168.48.128:19001/login

5.创建桶,设置权限

6.java代码实现上传,先加依赖

<dependency>
    <groupId>io.minio</groupId>
    <artifactId>minio</artifactId>
    <version>8.2.1</version>
</dependency>
@Configuration
public class MinioConfig {

    @Bean
    public MinioClient minioClient() {
        return MinioClient.builder()
                .endpoint("http://192.168.48.128:19000")
                .credentials("root", "12345678")
                .build();
    }
}
//-------------------------------------------

public class MinioUtil {
    @Autowired
    private MinioClient minioClient;

    public String uploadFile(MultipartFile file) throws Exception {
        String originalFileName = file.getOriginalFilename();
        String contentType = file.getContentType();
        String key = UUID.randomUUID().toString().replace("-", "");
        String suffix = originalFileName.substring(originalFileName.lastIndexOf("."));
        String objectName = String.format("%s%s", key, suffix);
        minioClient.putObject(PutObjectArgs.builder()
                   // 桶名
                .bucket("test01")
                .object(objectName)
                .stream(file.getInputStream(), file.getSize(), -1)
                .contentType(contentType)
                .build());

        String url = String.format("%s/%s/%s", "http://192.168.48.128:19000", "test01", objectName);
        System.out.println("访问路径"+url);
        return url;
    }
}

  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Docker是一个开源的应用容器引擎,它使得开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器或Windows机器上,也可以实现虚拟化。MinIO 是一个开源的对象存储服务器,常用于构建云存储服务。 要在 Docker安装 MinIO,你需要按照以下步骤操作: 1. **安装 Docker**(如果你还没有安装): - 对于 Ubuntu/Debian: `sudo apt-get update && sudo apt-get install docker.io` - 对于 CentOS/RHEL: `sudo yum install docker-ce` - 对于 macOS (通过 Docker Desktop): [官方下载](https://docs.docker.com/docker-for-mac/install/) - 对于 Windows: [官方下载](https://docs.docker.com/docker-for-windows/install/) 2. **拉取 MinIO 镜像**: 使用 Docker 命令行,运行: ``` docker pull minio/minio ``` 3. **运行 MinIO 容器**: 可以选择以守护进程模式运行 (`-d` 参数表示 detached, 后台运行),例如: ``` docker run -p 9000:9000 -v minio-data:/data -e MINIO_ACCESS_KEY=your-access-key -e MINIO_SECRET_KEY=your-secret-key minio/minio server /data ``` 这里 `-p 9000:9000` 将容器内的 9000 端口映射到主机的 9000 端口,`-v` 挂载宿主机目录(如 `minio-data`)为容器数据卷,`-e` 设置访问密钥和秘密密钥。 4. **配置和验证**: 访问 `http://localhost:9000`(如果在本地运行),使用你刚才设置的 `MINIO_ACCESS_KEY` 和 `MINIO_SECRET_KEY` 登录,检查是否成功安装并能正常工作。 **相关问题--:** 1. Docker镜像的作用是什么? 2. 除了运行,还可以如何管理和控制 MinIO 容器? 3. 如何在 Docker Compose 文件中定义并运行 MinIO 服务?
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值