Windows部署MinIO,搭建本地对象存储服务

一、前言

二、MinIO介绍

三、Windows部署MinIO服务

1、准备工作

2、下载MinIO服务

3、启动MinIO服务

4、设置用户名密码

5、创建.bat文件启动服务 

四、MinIO基本操作

1、存储桶管理

2、对象管理

3、数据查看


一、前言

基于外网的项目,可以使用阿里云等提供的OSS对象存储服务;

但基于内网的项目,就只能部署本地的文件存储服务,这里推荐一下MinIO;

二、MinIO介绍

MinIO是一个高性能、高可靠、可扩展、开源、分布式对象存储解决方案;

  • 它提供了与Amazon Web Services S3兼容的API,并支持所有核心S3功能;
  • 对于开发人员友好,部署简单,接口文档完善,支持主流开发语言;
  • 非常适合存储大量非结构化数据,例如图片、文件、视频、音频等等;
  • 对象存储的读/写速度最高可以高达183 GB/s和171 GB/s;
  • 上传文件大小是任意的,从几KB到最大5TB不等;
  • 支持界面控制台管理,图形化界面简单易用;

MinIO Object Storage for Windows (英文文档)

MinIO Windows中文文档

(官网内容,建议大家以英文文档为主,中文文档为辅;中文文档有时会存在更新不及时的情况)

三、Windows部署MinIO服务

MinIO的部署非常简单,只需要【下载、启动】两步就可以在本地搭建好一个文件存储服务了;

根据自己的操作系统,选择对应的MinIO server;这里记录的是在Windows中的安装部署;

1、准备工作

  • 准备一个空的文件夹,用来存放minio相关的内容;
  • 这里是在D盘的tool文件夹中,创建一个minio的文件夹;
  • 后续所有跟MinIO相关的内容,都是基于此文件夹(当然这个可以自定义,按照个人习惯,但一定要记住这个路径,后续需要用到);

【D:\tool\minio】

再创建两个子级文件夹bin和data;

2、下载MinIO服务

MinIO | Windows下载和安装文档

MinIO | Windows 下载链接

点击上方链接,在官网进行下载,这里选择Windows中的MinIO server,点击下载即可;

下载成功后,如下图所示;

将这个应用程序移入提前准备的文件夹中【D:\tool\minio\bin】;

注意:这个时候准备整个服务已经下载好了,不需要再安装别的,后面启动这个服务就可以了 

3、启动MinIO服务

(1)启动服务

注意:不要双击运行!!!不要双击运行!!!不要双击运行!!!

打开cmd窗口,定位到【D:\tool\minio\bin】文件夹中,输入下方命令,启动MinIO服务,不需要进行其他操作;

.\minio.exe server D:\tool\minio\data

注意: 

  • 一定要定位到d:\tool\minio\bin文件夹下;
  • d:\tool\minio\data 这个必须要填写,用来指定MinIO 在本地的存储路径;
  • 这里用到data这个文件夹路径,可以提前创建好,没有创建的话也不要紧,执行上述命令时会自动帮我们创建;

回车后,会出现如下图所示内容,代表本地的minio服务已经成功启动; 

(这个的确很简单很简单!!!) 

注意:

  • API 列出了客户端可以访问MinIO S3 API的网络接口和端口;
  • WebUI 列出了网络接口和端口,客户端可以通过这些接口和端口访问MinIO网页端的控制台。

(2)控制台访问

在浏览器中地址栏输入【http://127.0.0.1:58821】(以自己启动minio服务时的WebUI 端口为准,每次启动服务随机生成),访问本地的MinIO服务控制台;

可以看到MinIO服务的console操作界面;

输入用户名、密码进行登录,默认都是【minioadmin】(可以在cmd窗口中看到);

登录成功后,就可以看到操作界面,熟悉其他OSS服务的小伙伴就不陌生了。

(3)指定端口号启动服务

前面启动服务时,像控制台地址【http://127.0.0.1:58821】中的端口号,每次会自动生成,且不利于记忆,有强迫症的我一定要指定一个(按照个人习惯);

.\minio.exe server D:\tool\minio\data --console-address "127.0.0.1:9001" --address "127.0.0.1:9000"
  • 指定控制台端口号 9001;服务端口号9000;

浏览器地址栏中输入新的控制台访问路径,MinIO控制台内容正常显示;

注意:这里使用的ip仅仅只是本机;需要的话可以自行换成其他的;

4、设置用户名密码

我们也可以自定义用户名和密码;

  • 设置账号(至少3位):setx MINIO_ROOT_USER  name
  • 设置密码(至少8位):setx MINIO_ROOT_PASSWORD  password

需要重新打开cmd窗口,重新启动服务,可以看到我们设置的账号和密码已生效;

5、创建.bat文件启动服务 

可以创建一个.bat文件,来执行启动MinIO服务的命令,这样就不用每次手动输入了;

在【D:\tool\minio】下创建start.txt文档(起名随意);

输入下方内容,也就是启动服务的相关命令;

cmd /c "cd /d D:\tool\minio\bin&& .\minio.exe server  --address "127.0.0.1:9000" --console-address "127.0.0.1:9001"  D:\tool\minio\data"

 注意:

  • 【D:\tool\minio\bin】:minio.exe服务的存放路径;
  • 【.\minio.exe server 】:启动服务;
  • 【 --address "127.0.0.1:9000"】:指定服务端口号;
  • 【 --console-address "127.0.0.1:9001"】:指定控制台端口号;
  • 【 D:\tool\minio\data 】:数据的存放路径;

保存后,更改这个文档的后缀名位.bat;

双击运行这个文件,可以看到我们的服务已经正常启动了;

不难发现,只要关闭这个cmd窗口,minio服务就停了;

如果在【start.bat】文件的最前面,加上下列命令:

@echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
REM

保存后,双击运行,cmd窗口只是一闪而过;

打开任务管理器,会发现minio服务是启动的,但是原来的cmd窗口已经被隐藏了;

四、MinIO基本操作

MinIO提供了图形化的控制台管理界面,非常简单易用;

1、存储桶管理

桶:用来组织管理文件对象,类似于文件夹或者目录;

MinIO中的桶可以存放任意数量个文件,也可以存放目录文件夹;

点击【Create Bucket】,创建桶;

输入桶的名称,命名规则:

  • 长度必须介于3(最小)到63(最大)个字符之间;
  • 只能由小写字母、数字、点(.)和连字符(-)组成;
  • 不得包含两个相邻的句点或与连字符相邻的句点;
  • 不得格式化为IP地址(例如192.168.5.4);
  • 不能以前缀xn--开头;
  • 不能以后缀-s3alias结尾;
  • Bucket名称在分区内必须唯一;

这里创建名为【zyl】的存储桶,其他都采用默认,点击【Create Bucket】创建即可;

创建成功后,就可以看到如下图所示的存储桶了;

点击存储桶,可以进行删除等其他操作;

2、对象管理

对象,就是二进制数据,包括各种图片、各类文档,以及音频、视频等等

目前,这个【zyl】桶是没有任何内容的,是空的,点击桶可以上传文件;

 点击【upload】,选择文件,进行上传即可;

等待上传完成就可以看到刚才选择的文件;

点击上传好的文件,右侧会显示文件的基本信息,也可进行下载、分享、预览、删除等操作;

3、数据查看

打开本地的minio中的data文件夹,可以看到【zyl】桶了,以文件夹的形式展示;

在zyl桶(文件夹)中,可以看到上传的每个文件对象;

=========================================================================

以上内容,简单记录了minio服务的搭建过程,以及一些简单操作;

如有问题,还请各位大佬指教!

每天进步一点点,加油鸭~

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

python数据分析与可视化二

公共部分 # 引入数据分析工具 Pandas import pandas as pd # 引入数据可视化工具 Matplotlib import matplotlib.pyplot as plt # 引入科学计算库numpy import numpy as np from scipy import stats #解决输出时列名对齐问题 pd.set_option(display.unicode.east_asian_wid…

【Redis-04 补充】Redis事务

【Redis-04 补充】Redis事务 1. 事务冲突的问题1.1 举例1.2 悲观锁1.3 乐观锁1.4 Redis中的乐观锁 WATCH key [key …]1.5 Redis事务三特性 2. 秒杀案例2.1 相关代码2.2 模拟并发工具httpd-tools 3. 设计一个秒杀系统3.1 预热库存3.2 秒杀请求3.3 生成订单3.4 限流与防刷 4. 总…

如何找合适的C++项目给自己的简历加分?

在开始前刚好我有一些资料,是我根据网友给的问题精心整理了一份「嵌入式的资料从专业入门到高级教程」, 点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!! C的工作多种多样&#x…

[深度学习] 前馈神经网络

前馈神经网络(Feedforward Neural Network, FFNN)是人工神经网络中最基本的类型,也是许多复杂神经网络的基础。它包括一个输入层、一个或多个隐藏层和一个输出层。以下是详细介绍: 1. 结构 1. 输入层(Input Layer&am…

入门网络安全工程师要学习哪些内容

大家都知道网络安全行业很火,这个行业因为国家政策趋势正在大力发展,大有可为!但很多人对网络安全工程师还是不了解,不知道网络安全工程师需要学什么?知了堂小编总结出以下要点。 网络安全工程师是一个概称,学习的东西很多&…

Flexsim物流仿真入门-利用网络节点控制行走路线

在布局优化过程中,往往叉车,操作人员的搬运,是会按照一定的行走路线进行的,这就需要我们进行节点的设计,以此来实现特定路径的行走。 在构建过程中,这里将会以案例的形式进行讲解说明。 1)构建…

【Linux】进程间通信_3

文章目录 七、进程间通信1. 进程间通信分类命名管道 未完待续 七、进程间通信 1. 进程间通信分类 命名管道 管道应用的一个限制就是只能在具有共同祖先(具有亲缘关系)的进程间通信。如果我们想在不相关的进程之间交换数据,可以使用FIFO文件…

操作系统之《死锁与银行家算法》【知识点+详细解题过程】

知识点: 1、什么是死锁?(别名"三角恋",我喜欢你你喜欢他他喜欢我,明明都单身但是就是‘占有’不了) 一组进程中,每个进程都无限等待被该组进程中另一进程所占有的资源,因而永远无法…

vue-cli的搭建过程

一、创建一个vue2的项目 二、创建成功后删除这三个文件 三、新建一个App.vue文件 四、在文件中添加这一段话 五、打开命令框输入指令下载router路由 六、新建一个router目录,新建index.js文件 七、导入你的路由,进行配置 打开命令行工具,进入…

【Python Tips】创建自己的函数包并安装进Anaconda,像引入标准包一样直接import导入

目录 一、引言 二、方法步骤 步骤一:创建包目录结构 步骤二:配置__init__.py文件 步骤三:文件夹外配置setup.py文件 步骤四:终端Pip安装 三、结尾 一、引言 在编写项目代码的时候,有些自定义功能的函数是可以复用的。…

Java面向对象特性

Java继承: 继承的概念: 在Java中,继承(inheritance)是面向对象编程的一个重要概念,它允许一个类(子类)继承另一个类(父类)的属性和方法。通过继承&#xff0c…

MySQL高级-SQL优化- order by 优化(尽量使用覆盖索引、注意联合索引创建的规则、增大排序缓冲区大小)

文章目录 0、order by优化原则1、Using filesort2、Using index3、连接数据库4、查看索引5、删除索引6、按照年龄进行排序7、执行计划 order by age8、执行计划 order by age,phone9、创建联合索引 (age,phone)10、再次执行计划 order by age11、再次执行计划 order by age,pho…

SpringMVC处理器映射器HandlerMapping详解

目录 一、前言 二、initHandlerMappings 三、处理器映射器架构 策略接口 请求链 模版类 四、RequestMappingHandlerMapping的初始化 HandlerMethod映射器模版类的初始化 AbstractHandlerMethodMapping.MappingRegistry:内部类注册中心 五、Reques…

从菌群代谢到健康影响——认识肠道丙酸和丁酸

谷禾健康 短链脂肪酸这一词经常出现在谷禾的文章和报告中,那你真的了解短链脂肪酸吗?短链脂肪酸(SCFA)主要是肠道微生物群在结肠内通过发酵碳水化合物(包括膳食和内源性碳水化合物,主要是抗性淀粉和膳食纤维)和一些微生物可利用的蛋白质而产生…

一个人 三个月 干了二十万

相信很多人是被这个标题吸引进来的,但我并不是标题党,我也很讨厌标题党,这篇文章也不在乎流量,更多的是想记录下。 出来创业三个多月了,给大家汇报一下这段时间的业绩吧。一个人,三个多月,干了…

线性图标绘制指南:从基础到精通

图标在生活中随处可见。相比文字来说,图标可以让人在更短的时间内认知并了解信息,并且大大提升信息的视觉美观性,增加设计的艺术感染力。在用户界面中使用图标,是一种用户熟知的设计模式。而线性图标是通过提炼图形轮廓&#xff0…

TIOBE 6月榜单出炉!编程语言地位大洗牌,谁才是王?

C历史上首次超越C!!! TIOBE 公布了 2024 年 6 月编程语言的排行榜:https://www.tiobe.com/tiobe-index/ 排行榜 以下列出的语言代表了第51至第100名。由于它们之间的差异相对较小,编程语言仅以字母顺序列出。 ABC, A…

ubuntu16.04上搭建qt开发环境

安装qt 下载qt在linux下的安装包qt-opensource-linux-x64-5.8.0.run;将安装包拷贝到ubuntu16.04上;执行如下命令进行安装,注意:安装前先断开虚拟机的网络,这样就避免了注册账户的操作 基本上一路按“next”键&#xf…

使用青否数字人直播软件有哪些优势?

使用青否数字人主播主要具有以下优势: 1、降低直播门槛 在垂直程度较高、专业度更强的行业,面对相关品牌们“专业主播难培养”的问题。数字人主播的学习技能和灵活优势尽显。通过数字人直播可以借助知识库配置与AI能力,快速获得技术性知识&am…

【2024最新华为OD-C/D卷试题汇总】[支持在线评测] 螺旋矩阵填数(100分) - 三语言AC题解(Python/Java/Cpp)

🍭 大家好这里是清隆学长 ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新华为OD-C/D卷的三语言AC题解 💻 ACM银牌🥈| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢💗 &#x1f…