minio-docker单节点部署SDK测试文件上传下载

目录

一,docker部署minio单节点单磁盘

二,SDK测试上传下载


一,docker部署minio单节点单磁盘

1.拉取镜像

# 下载镜像
docker pull minio/minio

2.查看镜像

docker images

3.启动minio(新版本)

创建本机上的挂载目录,这个可以自己指定。

mkdir -p /opt/minio/data
mkdir -p /opt/minio/config
docker run \
-p 9000:9000 \
-p 9090:9090 \
--net=host \
--name minio \
-d --restart=always \
-e "MINIO_ROOT_USER=minioadmin" \
-e "MINIO_ROOT_PASSWORD=minioadmin" \
-v /opt/minio/data:/data \
-v /opt/minio/config:/root/.minio \minio/minio server \
/data --console-address ":9090" -address ":9000"

-d --restart=always是容器自启动,建议不要带。

增加这行参数,执行docker stop的时候不管用,他会立马又自己启动起来,只能强制删除容器,如下。

docker rm -f 容器id

1)-p 9000:9000  -p 9090:9090 

将本地机器上的端口 9000和 9090绑定到容器上相同的端口。 这允许通过本地机器访问容器。

(冒号前面是本地机器的端口,后面是docker容器内的端口,两者建立一个映射,实际访问是访问本机端口)

2)-v PATH:/data

将本地机器上的存储卷 PATH绑定到容器上的/data路径。path是自已指令的,但是/data是固定的,他是容器内的,但是也可以通过配置文件来改。

3)minio/minio server /data --console-address ":9090" -address ":9000"

使用之前步骤中拉取的 minio/minio 镜像启动MinIO服务器。 --console-address ":9090" 选项指示服务器为MinIO控制台Web界面设置一个静态端口。 

4.是否启动成功

这里最好把没用的容器停掉,否则内存占用太多,等会访问巨慢。

#查看正在运行的docker容器
docker ps
#查看容器日志
docker logs -f 8947b6930f99

5.如果云服务器9000/9090端口没有放开,那防火墙那里要放开。

然后访问9090控制台,

创建桶,上传下载没问题说明isok.

二,SDK测试上传下载

这里按照官网来操作即可,软件开发工具包(SDK) — MinIO中文文档 | MinIO Linux中文文档

导入依赖

        <dependency><groupId>io.minio</groupId><artifactId>minio</artifactId><version>8.5.9</version></dependency><dependency><groupId>com.squareup.okhttp3</groupId><artifactId>okhttp</artifactId><version>4.8.1</version></dependency>

1.创建minio客户端对象

    MinioClient minioClient =MinioClient.builder().endpoint("http://IP:9000").credentials("minioadmin", "minioadmin").build();

2.文件上传

    @Testpublic void upload() throws IOException, ServerException, InsufficientDataException, ErrorResponseException, NoSuchAlgorithmException, InvalidKeyException, InvalidResponseException, XmlParserException, InternalException {UploadObjectArgs asiatrip = UploadObjectArgs.builder().bucket("onlinecourse").object("2024/04/09/dingdaer.mp4").filename("D:\\bigfile_test\\dingdaer.mp4").build();minioClient.uploadObject(asiatrip);System.out.println("文件上传成功");}

bucket: 自己创建的桶的名字

object: 对象名,可以带目录,也可不带

filename: 本地文件路径

上传成功!!

注: 如果对象名称(objectName)一样,那么第二次会将第一次上传的覆盖掉。

2.文件删除

    @Testpublic void remove() throws ServerException, InsufficientDataException, ErrorResponseException, IOException, NoSuchAlgorithmException, InvalidKeyException, InvalidResponseException, XmlParserException, InternalException {RemoveObjectArgs build = RemoveObjectArgs.builder().bucket("onlinecourse").object("2024/04/09/dingdaer.mp4").build();minioClient.removeObject(build);}

3.下载文件

    @Testpublic void download() throws ServerException, InsufficientDataException, ErrorResponseException, IOException, NoSuchAlgorithmException, InvalidKeyException, InvalidResponseException, XmlParserException, InternalException {minioClient.downloadObject(DownloadObjectArgs.builder().bucket("onlinecourse").object("9fa9adef51d96db3720bd26dd9e64997.jpg").filename("D:\\bigfile_test\\download.jpg").build());}

filename为指定下载到哪里。

注: 出现问题,写错了等等,就把docker容器停掉重新启动即可。

docker常用命令Docker常用命令的使用及镜像的构建-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/616248.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++11的更新介绍(lamada、包装器)

&#x1fa90;&#x1fa90;&#x1fa90;欢迎来到程序员餐厅&#x1f4ab;&#x1f4ab;&#x1f4ab; 主厨&#xff1a;邪王真眼 主厨的主页&#xff1a;Chef‘s blog 所属专栏&#xff1a;c大冒险 总有光环在陨落&#xff0c;总有新星在闪烁 lambda表达式 C98中的一个…

【软件设计师】计算机软考下午题试题六,Java设计模式之简单工厂模式。

【软件设计师】计算机软考下午题试题六&#xff0c;Java设计模式之简单工厂模式。 代码如下&#xff1a; //简单工厂模式 public class SimpleFactory {public static void main(String[] args) {Product ProductAFactory.createProduct("A");ProductA.info();Produc…

AI赋能档案开放审核:实战

关注我们 - 数字罗塞塔计划 - 为进一步推进档案开放审核工作提质增效&#xff0c;结合近几年的业务探索、研究及项目实践&#xff0c;形成了一套较为成熟、高效的AI辅助档案开放审核解决方案&#xff0c;即以“AI人工”的人机协同模式引领档案开放审机制创新&#xff0c;在档…

SQL注入sqli_libs靶场第一题

第一题 联合查询 1&#xff09;思路&#xff1a; 有回显值 1.判断有无注入点 2.猜解列名数量 3.判断回显点 4.利用注入点进行信息收集 爆用户权限&#xff0c;爆库&#xff0c;爆版本号 爆表&#xff0c;爆列&#xff0c;爆账号密码 2&#xff09;解题过程&#xff1…

C语言学习笔记之指针(一)

目录 什么是指针&#xff1f; 指针和指针类型 指针的类型 指针类型的意义 指针-整数 指针的解引用 指针 - 指针 指针的关系运算 野指针 什么是野指针&#xff1f; 野指针的成因 如何规避野指针&#xff1f; 二级指针 什么是指针&#xff1f; 在介绍指针之前&#…

Vulnhub靶机 DC-1渗透详细过程

Vulnhub靶机:DC-1渗透详细过程 目录 Vulnhub靶机:DC-1渗透详细过程一、将靶机导入到虚拟机当中二、攻击方式主机发现端口扫描web渗透利用msf反弹shell数据库信息web管理员密码提权 一、将靶机导入到虚拟机当中 靶机地址&#xff1a; https://www.vulnhub.com/entry/dc-1-1,29…

Python网络爬虫中JSON格式数据存储详解

目录 一、引言 二、JSON格式数据简介 三、Python中处理JSON数据 四、网络爬虫中获取JSON数据 五、存储JSON数据到文件 六、从文件中读取JSON数据 七、注意事项和常见问题 八、总结 一、引言 在网络爬虫的应用中&#xff0c;JSON格式数据以其轻量级、易读易写的…

【计算机毕业设计】停车场管理系统——后附源码

&#x1f389;**欢迎来到琛哥的技术世界&#xff01;**&#x1f389; &#x1f4d8; 博主小档案&#xff1a; 琛哥&#xff0c;一名来自世界500强的资深程序猿&#xff0c;毕业于国内知名985高校。 &#x1f527; 技术专长&#xff1a; 琛哥在深度学习任务中展现出卓越的能力&a…

移动硬盘盒子加入PD100W充电功能:便携存储与高效充电的完美结合

在数字化时代&#xff0c;移动存储设备已经成为我们日常生活中不可或缺的一部分。无论是工作文件、学习资料还是娱乐内容&#xff0c;我们都需要一种可靠且便捷的方式来存储和携带这些数据。近年来&#xff0c;移动硬盘盒子以其紧凑的设计和出色的性能&#xff0c;受到了广大用…

每日一题 第八十九期 洛谷 [NOIP2017 提高组] 奶酪

[NOIP2017 提高组] 奶酪 题目背景 NOIP2017 提高组 D2T1 题目描述 现有一块大奶酪&#xff0c;它的高度为 h h h&#xff0c;它的长度和宽度我们可以认为是无限大的&#xff0c;奶酪中间有许多半径相同的球形空洞。我们可以在这块奶酪中建立空间坐标系&#xff0c;在坐标系…

CentOS7里ifcfg-eth0文件不存在解决方案/Centos7修改网络IP解决方案

Centos7网络IP地址手动设置 1、centos7没有ifcfg-eth0&#xff0c;我的centos7也没有其他博客说的什么ifcfg-ens33、ifcfg-ens32&#xff0c;然后我打开了我这里的ifcfg-eno***&#xff0c;结果发现就是centos6里的ifcfg-eth0里的网络配置。2、vim ifcfg-eno***&#xff08;按t…