Minio快速入门(Linux)

什么是Minio?

MinIO 是在 GNU Affero 通用公共许可证 v3.0 下发布的高性能对象存储。它与 Amazon S3 云存储服务 API 兼容。使用 MinIO 为机器学习、分析和应用程序数据工作负载构建高性能基础架构。

MinIO是高性能对象存储,什么是对象存储(Object Storage Service),对象存储是支持海量用户远程访问的无限容量廉价存储系统,既然是存储系统。

它由桶(bucket,对应Windows下的文件夹),组成目录结构,桶中直接存放对象(Object,对应Windwos下的文件),桶中不能再创建通,但是要能创建文件夹

Minio怎么用?

1.访问官网下载Minio

地址:https://docs.min.io/

Minio快速入门(Linux)_第1张图片
Minio快速入门(Linux)_第2张图片

2.下载好后将Minio拷贝到服务器上

或者直接在服务器上输入命令下载,命令如下

wget https://dl.min.io/server/minio/release/linux-amd64/minio

3.切换到minio所在目录下,将minio修改为可执行文件

chmod +x minio

4.启动Minio(注意:ip是自己的,端口号随意)

minio server /usr/local/barrel --console-address '192.168.31.135:9090'

Minio快速入门(Linux)_第3张图片
5.启动成功,访问Minio,用户名和密码都是minioadmin
Minio快速入门(Linux)_第4张图片
6.登录成功后可以创建一个桶上传照片来测试
Minio快速入门(Linux)_第5张图片
7.访问192.168.31.135:9090/桶名/文件名 或者 点击Share复制链接即可访问图片
Minio快速入门(Linux)_第6张图片

此时会有一个问题,因为权限不够而访问不到,只需修改权限即可

Minio快速入门(Linux)_第7张图片
Minio快速入门(Linux)_第8张图片
Minio快速入门(Linux)_第9张图片

重新访问192.168.31.135:9090/桶名/文件名即可看到图片

Minio快速入门(Linux)_第10张图片

8.到此对minio的配置全部结束,现在与java集成,先导入依赖

    io.minio
    minio
    8.3.9




    com.squareup.okhttp3
    okhttp
    4.9.0
9.编写Java代码(上传文件)
package com.huike.clues.domain.vo;

import io.minio.BucketExistsArgs;
import io.minio.MakeBucketArgs;
import io.minio.MinioClient;
import io.minio.UploadObjectArgs;
import io.minio.errors.MinioException;

public class FileUploader {
    public static void main(String[] args) throws Exception {
        try {
            MinioClient minioClient =
                    MinioClient.builder()
                            .endpoint("http://192.168.31.135:9000")
                            .credentials("minioadmin", "minioadmin")
                            .build();

            boolean found = minioClient.bucketExists(BucketExistsArgs.builder().bucket("huike-crm").build());
            if (!found) {
                minioClient.makeBucket(MakeBucketArgs.builder().bucket("huike-crm").build());
            } else {
                System.out.println("Bucket 'huike-crm' already exists.");
            }

            minioClient.uploadObject(UploadObjectArgs.builder()
                    .bucket("huike-crm")
                    .object("10.jpg")
                    .filename("C:\\Users\\MEC\\Desktop\\java.png")
                    .build());
            System.out.println("SUCCESS!!!!");
        } catch (MinioException e) {
            System.out.println("Error occurred: " + e);
            System.out.println("HTTP trace: " + e.httpTrace());
        }
    }
}

你可能感兴趣的:(linux,服务器,运维,java)