首页 > 其他分享 >Minio安装及使用

Minio安装及使用

时间:2024-09-12 23:50:25浏览次数:13  
标签:09 layne minio service 使用 ubuntu 20 安装 Minio

前言

在现在项目的开发中,文件存储方面的需求变得越来越多了。现在市面上几大云厂商都有提供一些相关存储的产品,开发者可以很方便的去使用。那我们如果有本地化的需求,那怎么办呢?Minio就是一款开源免费的产品,我们可以使用它进行本地化的部署来满足我们的需求。

配置要求
  1. 一台服务器:Ubuntu 22.04.1 LTS
  2. Minio安装包
安装Minio
下载Minio

访问Minio官网下载地址,找到对应操作系统安装包进行下载。

下载地址:https://min.io/download?license=agpl&platform=linux

# 下载minio安装包
wget https://dl.min.io/server/minio/release/linux-amd64/archive/minio_20240826153307.0.0_amd64.deb -O minio.deb

# 安装
sudo dpkg -i minio.deb 
创建systemd服务

在执行完安装命令后,会创建一个minio.service服务文件。
文件目录地址:/usr/lib/systemd/system/minio.service。下面是文件内容:

layne@layne-ubuntu-2:/data$ cat /usr/lib/systemd/system/minio.service 
[Unit]
Description=MinIO
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/usr/local/bin/minio

[Service]
Type=notify

WorkingDirectory=/usr/local

User=minio-user
Group=minio-user
ProtectProc=invisible

EnvironmentFile=-/etc/default/minio
ExecStart=/usr/local/bin/minio server $MINIO_OPTS $MINIO_VOLUMES

# Let systemd restart this service always
Restart=always

# Specifies the maximum file descriptor number that can be opened by this process
LimitNOFILE=1048576

# Turn-off memory accounting by systemd, which is buggy.
MemoryAccounting=no

# Specifies the maximum number of threads this process can create
TasksMax=infinity

# Disable timeout logic and wait until process is stopped
TimeoutSec=infinity

SendSIGKILL=no

[Install]
WantedBy=multi-user.target

# Built for ${project.name}-${project.version} (${project.name})

从文件内容中看到服务是通过minio-user用户和用户组来执行的。还有两个环境变量MINIO_OPTSMINIO_VOLUMES分别是配置启动参数和存储路径的。

创建用户

根据上面的启动服务信息,我们需要创建一个minio-user用户及用户组。还需要创建一个文件存储路径,我这里把目录创建在/data/minio路径下。

# 创建用户组
sudo groupadd -r minio-user
# 创建用户并关联用户组
sudo useradd -M -r -g minio-user minio-user

# 创建文件存储路径
sudo mkdir -p /data/minio

# 更改文件存储路径所有者为minio-user
sudo chown minio-user:minio-user /data/minio
创建环境变量

在服务启动信息中,我们还需要创建两个环境变量MINIO_OPTSMINIO_VOLUMES,另外我们还需要给一个ROOT用户及密码初始化minio控制台登录账号。我们在/etc/default目录下生成一个minio文件,将环境变量配置写入这个minio文件中。

# 进入/etc/default/目录
layne@layne-ubuntu-2:/data/minio$ cd /etc/default/

# 通过touch命令创建一个minio文件
layne@layne-ubuntu-2:/etc/default$ sudo touch minio

# 编辑minio文件
layne@layne-ubuntu-2:/etc/default$ sudo vim minio 

# 将下面内容写入到minio文件中

# 配置ROOT用户和密码
MINIO_ROOT_USER=minioadmin
MINIO_ROOT_PASSWORD=minioadmin

# 配置存储地址
MINIO_VOLUMES="/data/minio"

# 配置启动参数
# 配置控制台端口9001
MINIO_OPTS="--console-address :9001"

启动Minio

配置信息都配置好后,我们就可以启动minio服务了。通过systemctl start命令来启动minio.service。通过systemctl status来查看服务运行状态。通过返回信息,我们可以看到控制台访问地址和默认登录账号及密码。或者我们可以执行journalctl -f -u minio.service命令来查看运行日志。

# 启动minio服务
layne@layne-ubuntu-2:/etc/default$ sudo systemctl start minio.service 

# 查看minio运行状态
layne@layne-ubuntu-2:/etc/default$ sudo systemctl status minio.service 

# 以下是运行状态信息
● minio.service - MinIO
     Loaded: loaded (/lib/systemd/system/minio.service; disabled; vendor preset: enabled)
     Active: active (running) since Mon 2024-09-09 20:33:52 CST; 9s ago
       Docs: https://docs.min.io
   Main PID: 105379 (minio)
      Tasks: 10
        CPU: 673ms
     CGroup: /system.slice/minio.service
             └─105379 /usr/local/bin/minio server --console-address :9001 /data/minio

9月 09 20:33:52 layne-ubuntu-2 minio[105379]: Copyright: 2015-2024 MinIO, Inc.
9月 09 20:33:52 layne-ubuntu-2 minio[105379]: License: GNU AGPLv3 - https://www.gnu.org/licenses/agpl-3.0.html
9月 09 20:33:52 layne-ubuntu-2 minio[105379]: Version: RELEASE.2024-08-26T15-33-07Z (go1.22.6 linux/amd64)
9月 09 20:33:52 layne-ubuntu-2 minio[105379]: API: http://192.168.56.102:9000  http://10.0.3.15:9000  http://172.17.0.1:900>
9月 09 20:33:52 layne-ubuntu-2 minio[105379]: WebUI: http://192.168.56.102:9001 http://10.0.3.15:9001 http://172.17.0.1:900>
9月 09 20:33:52 layne-ubuntu-2 minio[105379]: Docs: https://docs.min.io
9月 09 20:33:52 layne-ubuntu-2 minio[105379]: WARN: Detected default credentials 'minioadmin:minioadmin', we recommend that>
9月 09 20:33:53 layne-ubuntu-2 minio[105379]: INFO:
9月 09 20:33:53 layne-ubuntu-2 minio[105379]:  You are running an older version of MinIO released 2 days before the latest >
9月 09 20:33:53 layne-ubuntu-2 minio[105379]:  Update: Run `mc admin update ALIAS`
访问Minio

通过打印服务运行日志可以看到,minio控制台访问地址为http://192.168.56.102:9001。在浏览器输入地址访问,使用minioadmin账号密码登录就可以正常使用了。

登录页面:

首页:

停止Minio

我们想要停止Minio服务的话,只需要通过 systemctl stop minio.service 命令就可以停止服务了。

# 停止minio服务
layne@layne-ubuntu-2:/etc/default$ sudo systemctl stop minio.service 

# 查看minio运行状态
layne@layne-ubuntu-2:/etc/default$ sudo systemctl status minio.service 
○ minio.service - MinIO
     Loaded: loaded (/lib/systemd/system/minio.service; disabled; vendor preset: enabled)
     Active: inactive (dead)
       Docs: https://docs.min.io

9月 09 20:33:52 layne-ubuntu-2 minio[105379]: Docs: https://docs.min.io
9月 09 20:33:52 layne-ubuntu-2 minio[105379]: WARN: Detected default credentials 'minioadmin:minioadmin', we recommend that>
9月 09 20:33:53 layne-ubuntu-2 minio[105379]: INFO:
9月 09 20:33:53 layne-ubuntu-2 minio[105379]:  You are running an older version of MinIO released 2 days before the latest >
9月 09 20:33:53 layne-ubuntu-2 minio[105379]:  Update: Run `mc admin update ALIAS`
9月 09 20:59:26 layne-ubuntu-2 systemd[1]: Stopping MinIO...
9月 09 20:59:26 layne-ubuntu-2 minio[105379]: INFO: Exiting on signal: TERMINATED
9月 09 20:59:26 layne-ubuntu-2 systemd[1]: minio.service: Deactivated successfully.
9月 09 20:59:26 layne-ubuntu-2 systemd[1]: Stopped MinIO.
9月 09 20:59:26 layne-ubuntu-2 systemd[1]: minio.service: Consumed 2.441s CPU time.
更新systemd服务

我们想要更新Minio服务脚本信息的话,只需要编辑文件/usr/lib/systemd/system/minio.service就好了。编辑完保存后,执行命令systemctl daemon-reload刷新一下,就可以执行启动服务了。

# 编辑minio.service
layne@layne-ubuntu-2:/etc/default$ sudo vim /usr/lib/systemd/system/minio.service 

-----以下是minio.service内容
[Unit]
Description=MinIO
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/usr/local/bin/minio

[Service]
Type=notify

WorkingDirectory=/usr/local

User=minio-user
Group=minio-user
ProtectProc=invisible

EnvironmentFile=-/etc/default/minio
ExecStart=/usr/local/bin/minio server $MINIO_OPTS $MINIO_VOLUMES

# Let systemd restart this service always
Restart=always

# Specifies the maximum file descriptor number that can be opened by this process
LimitNOFILE=1048576

# Turn-off memory accounting by systemd, which is buggy.
MemoryAccounting=no

# Specifies the maximum number of threads this process can create
TasksMax=infinity

# Disable timeout logic and wait until process is stopped
#TimeoutSec=infinity
TimeoutSec=0

SendSIGKILL=no

[Install]
WantedBy=multi-user.target

# Built for ${project.name}-${project.version} (${project.name})

-----以上是minio.service内容

# 刷新一下服务
layne@layne-ubuntu-2:/etc/default$ sudo systemctl daemon-reload 

# 启动minio服务
layne@layne-ubuntu-2:/etc/default$ sudo systemctl start minio.service 
使用Minio

Minio使用起来很简单,登录Minio控制台,找到对应菜单进行操作就好了,下面是一些简单的操作页面截图。

创建桶Buckets

创建文件

创建目录

后语

总而言之,Minio安装还是很简单的。而且官网上有很详细的安装指导说明,有兴趣的朋友可以去官网多看看,里面很多参数配置值得我们去研究学习。当然,我这里是安装的一个简单的单机版,Minio是支持分布式安装的,这个安装方法大家可以去官网详细了解一下。对于Minio的使用,这篇只是简单说了下控制台的使用。对于开发的朋友,我们更关注的是怎么使用minio的SDK来操作,这个内容就留在下一篇文章来说明吧。

喜欢的朋友可以点个关注,感谢阅读。

标签:09,layne,minio,service,使用,ubuntu,20,安装,Minio
From: https://blog.csdn.net/u011344233/article/details/142070165

相关文章

  • 指针初阶及使用
    指针的使用指针是什么指针和指针类型野指针指针运算指针和数组二级指针指针数组指针是什么我们对指针的理解大多数就是地址,那究竟是不是呢?指针是内存中一个最小单元的编号,也就是地址平时口语中说的指针,通常指的是指针变量,是用来存放内存地址的变量我们想要了解......
  • 项目完成小结:使用DjangoStarter v3和Taro开发的微信小程序
    前言不知不觉已经九月了,又到了一年的开学季,我每年都想做的项目墙甚至连个影子都没有…......
  • Doris3.0.1安装
    apache-doris-3.0.1-bin-x64.tar.gz,jdk-17_linux-x64_bin.tar.gz(jdk-17.0.12)。准备4台服务器,1台FE,3台BE。采用阿里云的ECS云服务器。RockyLinx9.4服务器系统。IP安装doris类别172.25.93.153FE172.25.93.154BE(be1)172.25.93.155BE(be2)172.25.93.156BE(be3)oris默认的端口规划因为安装的......
  • mybatis exists 中使用代替in关键字
      使用场景,in适合数据量小的时候,exists适合数据量大的时候。<iftest="torqueRecordPageDTO.vinList!=nullandtorqueRecordPageDTO.vinList.size>0">andexists(select1from(<foreachcollection="......
  • 3D地形图制作新纪元,教你使用PS中的3D Map Generator制作3D地形图
    大家好!紧接上一篇文章,我将为大家介绍如何使用ps中的3Dmapgentor生成三维地形。首先,先为各位观众介绍一下这款插件,3DMapGenerator是一款功能强大的Photoshop插件,主要用于快速生成地形图等三维地图。具有以下特点和功能:3DMapGenerator插件可用于制作地形图、城市规划、......
  • 对象存储方案大比拼——本地存储、OSS、MinIO、Ceph、Apache Ozone 与 OpenIO
    在当今数据驱动的时代,选择合适的对象存储方案对于企业和开发者来说至关重要。本文将对本地存储、阿里云OSS、MinIO、Ceph、ApacheOzone和OpenIO这几种常见的对象存储方案进行详细的介绍和比较,帮助你做出明智的选择。 一、本地存储 (一)特点 1. 直接存储在本地设备......
  • 如何使用python中的math
    首先,导入math函数库。一、计算平方根输入一个数值,保存在变量n中。用函数sqrt,计算变量平方根的值。二、计算幂可以用函数exp,计算e的x次幂。三、计算对数设置两个数,保存在变量n和a中。接着,用log函数计算以a为基数n的对数。运行程序,其结果如下图所示。......
  • Linux编译器-gcc/g++使用
    1.背景知识1.预处理(进行宏替换)2.编译(生成汇编)3.汇编(生成机器可识别代码)4.连接(生成可执行文件或库文件)2.gcc如何完成格式gcc[选项]要编译的文件[选项][目标文件]预处理(进行宏替换)编译(生成汇编)汇编(生成机器可识别代码)连接(生成可执行文件或库文件)......
  • 【Python使用】嘿马python基础入门全体系教程第9篇:高阶函数,函数应用:学生管理系统【附
    本教程的知识点为:计算机组成计算机是由什么组成的?1.硬件系统:2.软件系统:目标运算符的分类1.算数运算符2.赋值运算符3.复合赋值运算符判断语句和循环语句if嵌套1.if嵌套的格式2.if嵌套的应用if嵌套执行流程容器:字符串、列表、元组、字典字符串介绍一.认识字......
  • ubuntu安装nvidia显卡驱动及cuda
    安装NVIDIA驱动sudoaptupdate下载依赖sudoaptinstallgccmakevimssh-y查看是否禁用nouveaulsmod|grepnouveau显示输出代表没禁用禁用自带的nouveau开源驱动sudovim/etc/modprobe.d/blacklist-nouveau.conf文本输入以下两行blacklistnouveauoptionsnouve......