news 2026/5/7 13:05:07

Minio使用

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Minio使用

MinIO创建和上传数据

1.启动Minio然后进行登录对应文档

2.创建数据桶



3.创建后找到对应的数据桶,进行图片或文件上传



4.在浏览器里访问上传的图片

5.设置桶访问权限

桶的权限共有三个选项,分别是:

6.自定义桶的访问权限

若想将权限设置为只允许所有者写,但允许所有人读,就需要自定义访问权限。
自定义访问权限,需要使用一个规定格式的JSON字符串进行描述,具体格式可参考官方文档

7.然后在请求图片就能正常访问了

项目里使用MinIo

MinIO提供了多种语言的SDK供开发者使用,本项目需要用到Java SDK官方文档

1.创建项目,并配置依赖

<dependency> <groupId>io.minio</groupId> <artifactId>minio</artifactId> <version>8.5.3</version> </dependency>

2.编写代码进行测试

package com.MyBatis.updataImage; import io.minio.*; import io.minio.errors.MinioException; public class upImage { public static void main(String[] args) { try { // 构造 MinIO Client MinioClient minioClient = MinioClient.builder() .endpoint("http://192.168.23.101:9000")// 要填写MinIo的api端口的地址 .credentials("minioadmin", "minioadmin") .build(); String bucketName = "hello-minio"; // 创建hello-minio桶 boolean found = minioClient.bucketExists( BucketExistsArgs.builder().bucket(bucketName).build() ); if (!found) { // 创建hello-minio桶 minioClient.makeBucket( MakeBucketArgs.builder().bucket(bucketName).build() ); // 设置数据桶访问权限(使用文本块) String policy = """ { "Version": "2012-10-17", "Statement": [{ "Action": "s3:GetObject", "Effect": "Allow", "Principal": "*", "Resource": "arn:aws:s3:::hello-minio/*" }] }"""; minioClient.setBucketPolicy( SetBucketPolicyArgs.builder() .bucket(bucketName) .config(policy) .build() ); } else { System.out.println("Bucket '" + bucketName + "' already exists."); } // 上传图片(注意修改文件路径) minioClient.uploadObject( UploadObjectArgs.builder() .bucket(bucketName) .object("猫.jpg") // 上传后的文件名 .filename("C:\\Users\\30593\\Desktop\\猫.jpg") .build() ); System.out.println("上传成功"); } catch (MinioException e) { System.out.println("MinIO Error: " + e.getMessage()); e.printStackTrace(); } catch (Exception e) { System.out.println("Error: " + e.getMessage()); e.printStackTrace(); } } }

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/10 9:35:24

如何实现重组抗体的高效表达?

一、重组抗体表达服务包含哪些核心技术&#xff1f;重组抗体表达服务是现代生物技术领域的关键支撑服务&#xff0c;其核心在于将人工设计的抗体基因序列在合适的表达系统中高效、稳定地表达。这一服务涉及多项核心技术的系统集成&#xff0c;包括表达载体的设计与构建、表达系…

作者头像 李华
网站建设 2026/4/10 9:34:28

ncmdump终极指南:三步解锁网易云音乐NCM文件的完整解决方案

ncmdump终极指南&#xff1a;三步解锁网易云音乐NCM文件的完整解决方案 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 你是否曾为网易云音乐下载的NCM格式文件而烦恼&#xff1f;这些只能在特定平台播放的加密文件&#xff0c;就像…

作者头像 李华
网站建设 2026/4/10 9:33:30

单火线智能面板电源设计:继电器供电与切相取电技术解析

单火线智能面板电源设计&#xff1a;继电器供电与切相取电技术解析在智能家居领域&#xff0c;单火线智能面板&#xff08;如墙壁智能开关、温控器、场景面板&#xff09;因无需重新布线、可直接替换传统墙壁开关而备受市场青睐。然而&#xff0c;单火线环境下如何为面板内部的…

作者头像 李华
网站建设 2026/4/10 9:33:00

解密Windows游戏手柄兼容性难题:ViGEmBus的终极解决方案

解密Windows游戏手柄兼容性难题&#xff1a;ViGEmBus的终极解决方案 【免费下载链接】ViGEmBus Windows kernel-mode driver emulating well-known USB game controllers. 项目地址: https://gitcode.com/gh_mirrors/vi/ViGEmBus 还在为那些躺在抽屉里的老款游戏手柄无法…

作者头像 李华
网站建设 2026/4/10 9:32:18

Agent池实战:从单兵到军团的协作升级

Agent池玩法全解析&#xff1a;从单兵作战到军团协作的实战指南&#xff08;完整版&#xff09; 摘要 在AI Agent应用日益普及的今天&#xff0c;如何高效管理多个Agent、实现智能协作成为开发者关注的焦点。本文深入解析Agent池的核心架构与实战部署流程&#xff0c;涵盖从单个…

作者头像 李华