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服务的搭建过程,以及一些简单操作;

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

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

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

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

相关文章

【MySQL】InnoDB的存储结构

InnoDB的存储结构:每个表都会生成一个表空间文件,这个文件里面最小结构就是行,存储的真正的数据,一个页来管理若干行,一个区来管理若干页,一个区组来管理若干区。段并不是真正的物理存储结构,它…

Kotlin设计模式:代理模式详解

Kotlin设计模式:代理模式详解 在软件开发中,设计模式是解决常见问题的一种优雅方法。本文将介绍Kotlin中的代理模式(Proxy Pattern),其应用场景,以及如何通过实例代码实现这一模式。 代理模式的目的 代理…

YOLOV8图像分割预测后输出mask图

训练一个yolov8模型后,用官方的预测脚本一般是: results model.predict(img_path, saveTrue, save_diroutput_folder) 运行此代码会直接在run里面生成一个文件夹,保存预测图像。如果要获取分割后的mask点,或mask的轮廓点&#…

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

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

C#——里氏转换详情

里氏转换 里氏转换就是派生类的对象赋值给父类对象,反之则不行 实例 : 先创键一个类然后继承 调用

一种502 bad gateway nginx/1.18.0的解决办法

背景:上线的服务突然挂掉了 step1,去后端日志查看,发现并无异常,就是请求无法被接收 step2,查看了nginx的错误日志,发现该文件为空 step3,查看了niginx的运行日志,发现了以下问题 [error] 38#…

第4章,在 PyCharm 中创建、打开、关闭项目的操作

在 PyCharm 中创建、打开、关闭项目的操作 在PyCharm中创建、打开和关闭项目的操作步骤。以下是每个操作的步骤说明,以及在PyCharm界面中可能对应的区域: 1、创建新项目 1)启动PyCharm: 打开PyCharm IDE。 2)创建新…

第4章 客户端-客户端管理

1. 客户端API 1.1client list client list命令能列出与Redis服务端相连的所有客户端连接信息。 127.0.0.1:6379> client list id254487 addr10.2.xx.234:60240 fd1311 name age8888581 idle8888581 flagsN db0 sub0 psub0 multi-1 qbuf0 qbuf-free0 obl0 oll0 omem0 events…

C# 类中访问修饰符的优先级

参考链接 : C# 指南 - .NET 托管语言 | Microsoft Learn 访问修饰符 - C# | Microsoft Learn

Redis 内存碎片是什么?如何清理?

Redis 内存碎片相关的问题在得物、美团、阿里、字节、携程等公司的后端面试中都曾出现过,还是建议认真准备一下。即使不是准备面试,日常开发也是能够用到的! 什么是内存碎片? 你可以将内存碎片简单地理解为那些不可用的空闲内存。 举个例子&…

计网实训——不相同网段的PC相互通信

目录 提前准备APP路由器指令 实验一1、实验需求(1)实现同网段的PC相互通信。(2)实现不相同网段的PC相互通信。(3)分析相同和不同网段PC通信时MAC地址的变化。 2、实验拓扑3、实验步骤及实验截图&#xff08…

如何用Vue3和Plotly.js绘制动态3D图表?

本文由ScriptEcho平台提供技术支持 项目地址:传送门 Plotly.js: 使用Vue.js动态加载数据并绘制图表 应用场景 在数据可视化应用中,需要将数据动态加载到图表中并进行实时更新。本文将展示如何使用Plotly.js和Vue.js实现这一功能,从加载外…

http发展史(http0.9、http1.0、http1.1、http/2、http/3)详解

文章目录 HTTP/0.9HTTP/1.0HTTP/1.1队头阻塞(Head-of-Line Blocking)1. TCP 层的队头阻塞2. HTTP/1.1 的队头阻塞 HTTP/2HTTP/3 http3详解:http://t.csdnimg.cn/h45r3 HTTP/0.9 发布时间:1991年 特点: 只支持 GET 方…

关于怎么将wireshark抓包视频流转为视频播放出来

0.安装wireshark 安装PotPlayer 1.将以下两个插件放入 C:\Program Files\Wireshark\plugins 目录中 2.筛选视频流数据包,右键Decode As… 改为RTP 或者 右键->follow(追踪流)->UDP stream 然后叉掉弹窗 3.选择菜单Edit->Prefe…

BUUCTF-WEB(第二天)

[极客大挑战 2019]Http 这题明显考察的是http协议,打开靶场访问什么也没有,F12来查看看控制台的html源码,直到最后那里我们才看到一个Secret.php文件4,所以直接访问即可。 回显字符串:It doesnt come from https://S…

探究互联网领域知识,解密数字化时代神秘面纱

随着信息时代的不断发展,互联网的发展呈现出爆炸式的增长,以至于引起广泛的关注和深入的探究。互联网作为一个庞大的网络体系,涵盖着无穷无尽的信息和知识,其背后的科技和应用已经改变了人们的生活,产生了翻天覆地的变…

每日一道算法题 有效括号序列

题目 有效括号序列_牛客题霸_牛客网 (nowcoder.com) Python 1长度必须为偶数 2就像开心消消乐一样,一左一右就消掉。 class Solution:def isValid(self , s: str) -> bool:# write code here# flag[(),{},[]]# for _ in range(len(s)//2):# for i in fl…

查普曼大学团队使用惯性动捕系统制作动画短片

道奇电影和媒体艺术学院是查普曼大学的知名学院,同时也是美国首屈一指的电影学院之一,拥有一流电影制作工作室。 最近,道奇学院的一个学生制作团队接手了一个项目,该项目要求使用真人动作、视觉效果以及真人演员和CG角色之间的互动…

Maven笔记(更新中)

一、Maven简介 Maven是一款为Java项目构建,依赖管理的工具(软件),使用Maven可以自动化构建,测试,打包和发布项目,大大提高了开发效率和质量 Maven主要作用理解 依赖管理 Maven可以管理项目的依赖,包括自动下载所需依赖库,自动下载依赖所需的依赖并且保证版本没有冲突,依赖版…

docker +tmux 远程本地gdb调试

文章目录 远程调试docker pull失败docker上容器运行程序失败宿主机远程调试docker中运行的程序环境准备调试步骤 本地调试bugpwngdbtmuxTmux复制粘贴到其他地方pwngdb和tmux优化~~感觉用了大佬的镜像后宿主机来做pwn题都不香了~~ 远程调试 但目前不知道如何实现可以边跟着脚本…