for centos7单实例安装
centos7.9
下载地址获取
这个地址:https://min.io/download?license=agpl&platform=linux
找到下载地址使用wget下载,下载成功之后,就是一个不带后缀的可执行文件,所以我们还要给它赋予可执行权限:
# 下载
mkdir -p /opt/minio
mkdir -p /opt/minio/data
cd /opt/minio
wget https://dl.min.io/server/minio/release/linux-amd64/minio
wget https://dl.min.io/client/mc/release/linux-amd64/mc
# 赋予可执行权限,下面两个命令都是可以的
cd /opt/minio
chmod +x minio
chmod 744 minio
chmod 744 mc
[root@cs minio]# cd /opt/minio
[root@cs minio]# wget https://dl.min.io/server/minio/release/linux-amd64/minio
[root@cs minio]# wget https://dl.min.io/client/mc/release/linux-amd64/mc
[root@cs minio]# chmod 744 minio
[root@cs minio]# chmod 744 mc
[root@cs minio]# ll
total 126724
drwxr-xr-x. 2 root root 6 May 19 21:15 data
-rwxr--r--. 1 root root 26771608 May 19 21:31 mc
-rwxr-xr-x. 1 root root 102985880 May 19 21:31 minio
运行
下载之后的文件就是可执行文件,给了可执行权限之后,就可以去启动它了。
前台启动:
/opt/minio/minio server /opt/minio/data --console-address ":9001" --address ":9000"
[root@cs minio]# /opt/minio/minio server /opt/minio/data --console-address ":9001" -address ":9000"
Formatting 1st pool, 1 set(s), 1 drives per set.
WARNING: Host local has more than 0 drives of set. A host failure will result in data becoming unavailable.
MinIO Object Storage Server
Copyright: 2015-2024 MinIO, Inc.
License: GNU AGPLv3 - https://www.gnu.org/licenses/agpl-3.0.html
Version: RELEASE.2024-05-10T01-41-38Z (go1.22.3 linux/amd64)
API: http://192.168.11.150:9000 http://127.0.0.1:9000
RootUser: minioadmin
RootPass: minioadmin
WebUI: http://192.168.11.150:9001 http://127.0.0.1:9001
RootUser: minioadmin
RootPass: minioadmin
CLI: https://min.io/docs/minio/linux/reference/minio-mc.html#quickstart
$ mc alias set 'myminio' 'http://192.168.11.150:9000' 'minioadmin' 'minioadmin'
Docs: https://min.io/docs/minio/linux/index.html
Status: 1 Online, 0 Offline.
STARTUP WARNINGS:
- Detected Linux kernel version older than 4.0.0 release, there are some known potential performance problems with this kernel version. MinIO recommends a minimum of 4.x.x linux kernel version for best performance
# 说的是linux内核版本低,升级到4.0以上最好,这里可以不管它,当然也可以升级内核
- Detected default credentials 'minioadmin:minioadmin', we recommend that you change these values with 'MINIO_ROOT_USER' and 'MINIO_ROOT_PASSWORD' environment variables
# 说的是默认账号和密码的事儿,同样可以不管它
- The standard parity is set to 0. This can lead to data loss.
# 说的是minio实例是单节点的方式启动的,有可能会造成数据丢失,没错,我们现在就启动了一个实例,所以同样可以不管它
你就可以按照提示,浏览器访问WebUI的管理网站了。
后台启动的几种方式:
# &方式
/opt/minio/minio server /opt/minio/data --console-address ":9001" --address ":9000" &
# nohup方式,推荐
nohup /opt/minio/minio server /opt/minio/data --console-address ":9001" --address ":9000" >/dev/null 2>&1 &
或者supervisor
管理,其原理就是,通过三方软件监控uwsgi的进程,发现uwsgi的进程挂掉了,监控软件自动重启uwsgi进程。
直接使用使用yum命令即可直接安装即可:
yum install epel-release
yum install -y supervisor
生成supervisor的配置文件:
echo_supervisord_conf > /etc/supervisord.conf
这里贴个supervisor的示例,编辑supervisord.conf
配置文件vim /etc/supervisord.conf
,追加如下内容:
[program:minio]
command=/opt/minio/minio server /opt/minio/data --console-address ":9001" --address ":9000"
autostart=true ; 在supervisord启动的时候也自动启动
startsecs=10 ; 启动10秒后没有异常退出,就表示进程正常启动了,默认为1秒
autorestart=true ; 程序退出后自动重启,可选值:[unexpected,true,false],默认为unexpected,表示进程意外杀死后才重启
stopasgroup=true ;默认为false,进程被杀死时,是否向这个进程组发送stop信号,包括子进程
killasgroup=true ;默认为false,向进程组发送kill信号,包括子进程
然后就可以尝试通过supervisor命令启动minio,注意,要先杀掉之前启动minio相关进程:
pkill -9 minio
pkill -9 supervisord
# 根据配置文件启动supervisord进程,同时也会启动监控的uwsgi进程
supervisord -c /etc/supervisord.conf
# 通过supervisorctl终端可以方便查询到监控的所有的进程,然后你可以指定启动/停止/重启某个进程
supervisorctl -c /etc/supervisord.conf
[root@cs minio]# supervisorctl -c /etc/supervisord.conf
minio STARTING
supervisor> status minio
minio RUNNING pid 75401, uptime 0:01:56
supervisor> exit;
[root@cs minio]#
现在你就可以任意访问minio服务了。
for docker单实例配置
安装docker
# 查看已安装了哪些docker相关的软件,都给它卸载掉,没有过滤出来就算了
yum list installed | grep docker
yum remove -y docker*
# 更新和安装相关依赖
yum update -y
yum install -y yum-utils device-mapper-persistent-data lvm2
# 添加docker的yum源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 添加阿里的docker的yum源
# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 查看及安装docker
yum list docker-ce --showduplicates | sort -r
yum install -y docker-ce-26.1.3-1.el7
docker version
systemctl start docker # 启动
systemctl enable docker # 加入开机启动
ps -ef | grep docker
docker version
拉取minio镜像
docker search minio
docker pull minio/minio
docker images | grep minio
[root@cs ~]# docker images | grep minio
minio/minio latest 49c3911c1fe9 10 days ago 160MB
启动镜像
# 解释版
docker run -d --name minio \ # 创建并后台运行一个容器,容器名叫做minio
-e "MINIO_ROOT_USER=minio" -e "MINIO_ROOT_PASSWORD=minio1234" \ # 设置账号密码
-p 9000:9000 -p 9001:9001 \ # webui和api的端口映射
-v /opt/minio/data:/opt/minio/data \ # 数据卷目录挂载
minio/minio server /opt/minio/data --console-address ":9001" --address ":9000" # 容器中启动minio程序的命令
docker run -d --name minio \
-e "MINIO_ROOT_USER=minio" -e "MINIO_ROOT_PASSWORD=minio1234" \
-p 9000:9000 -p 9001:9001 \
-v /opt/minio/data:/opt/minio/data \
minio/minio server /opt/minio/data --console-address ":9001" --address ":9000"
# 其他命令
docker ps -a | grep minio
docker stop minio
docker start minio
docker rm minio
docker logs minio # 查看容器运行日志
[root@cs tmp]# docker logs minio
MinIO Object Storage Server
Copyright: 2015-2024 MinIO, Inc.
License: GNU AGPLv3 - https://www.gnu.org/licenses/agpl-3.0.html
Version: RELEASE.2024-05-10T01-41-38Z (go1.22.3 linux/amd64)
API: http://172.17.0.2:9000 http://127.0.0.1:9000
WebUI: http://172.17.0.2:9001 http://127.0.0.1:9001
Docs: https://min.io/docs/minio/linux/index.html
Status: 1 Online, 0 Offline.
STARTUP WARNINGS:
- Detected Linux kernel version older than 4.0.0 release, there are some known potential performance problems with this kernel version. MinIO recommends a minimum of 4.x.x linux kernel version for best performance
# 说的是linux内核版本低,升级到4.0以上最好,这里可以不管它,当然也可以升级内核
- The standard parity is set to 0. This can lead to data loss.
# 说的是minio实例是单节点的方式启动的,有可能会造成数据丢失,没错,我们现在就启动了一个实例,所以同样可以不管它
现在就可以浏览器访问云服务器的IP和9000端口访问web管理后台了。
for windows
下载安装
由于Go语言的特性,下载的本地的可执行程序无需安装,直接运行即可。
下载 从这个链接中找最新的安装程序下载链接:https://min.io/docs/minio/windows/index.html:
# 我这里贴一份直达的链接,从以下 URL 下载 MinIO 可执行文件:
https://dl.min.io/server/minio/release/windows-amd64/minio.exe
或者从百度网盘中下载:链接:https://pan.baidu.com/s/12Ap619il_D-Iyoaplj-iSQ?pwd=97m6 提取码:97m6
但为了后续方便,我们做一些额外的配置,让我们后续使用更方便。
首先我将创建这样的一个目录结构:
C:\software\minio # 路径需要你自行创建,或者创建到其他的目录,但避开中文和其他特殊字符和空格
├─ minio.exe # 需要将下载的可执行程序挪到这里来
├─ minio.bat # 手动制作的bat文件
└─ nssm.exe # 从上面提供的百度云盘链接中的nssm-2.24.zip中,找到对应位数的nssm.exe
添加环境变量
将上一步的中的C:\software\minio
添加系统的环境变量中。
系统变量 | 值 |
---|---|
path | C:\software\minio |
启动测试
打开终端,可以执行下面的命令:
minio.exe server C:\software\minio --console-address ":9001" -address ":9000"
# 参数
C:\software\minio # MinIO安装的目录,包含配置文件,存储文件
--console-address ":9001" # 控制台端口,自带UI页面
-address ":9000" # API端口
# 示例
C:\Users\12061>minio.exe server C:\software\minio --console-address ":9001" -address ":9000"
MinIO Object Storage Server
Copyright: 2015-2024 MinIO, Inc.
License: GNU AGPLv3 - https://www.gnu.org/licenses/agpl-3.0.html
Version: RELEASE.2024-05-10T01-41-38Z (go1.22.3 windows/amd64)
API: http://192.168.8.140:9000 http://192.168.11.100:9000 http://192.168.6.1:9000 http://127.0.0.1:9000
RootUser: minioadmin
RootPass: minioadmin
WebUI: http://192.168.8.140:9001 http://192.168.11.100:9001 http://192.168.6.1:9001 http://127.0.0.1:9001
RootUser: minioadmin
RootPass: minioadmin
CLI: https://min.io/docs/minio/linux/reference/minio-mc.html#quickstart
$ mc alias set 'myminio' 'http://192.168.8.140:9000' 'minioadmin' 'minioadmin'
Docs: https://min.io/docs/minio/linux/index.html
Status: 1 Online, 0 Offline.
STARTUP WARNINGS:
- Detected default credentials 'minioadmin:minioadmin', we recommend that you change these values with 'MINIO_ROOT_USER' and 'MINIO_ROOT_PASSWORD' environment variables
- The standard parity is set to 0. This can lead to data loss.
上面的一些WARNINGS我们不管,反正Windows平台也就是学习用。
只要注意到两个地方:
# 将来对接其他语言时,通过这个api接口,并告诉我们了账号和密码了
API: http://192.168.8.140:9000 http://192.168.11.100:9000 http://192.168.6.1:9000 http://127.0.0.1:9000
RootUser: minioadmin
RootPass: minioadmin
# 浏览器控制台的地址、账号、密码
WebUI: http://192.168.8.140:9001 http://192.168.11.100:9001 http://192.168.6.1:9001 http://127.0.0.1:9001
RootUser: minioadmin
RootPass: minioadmin
这个时候你就可以打开浏览器输入上面的任意一个WebUI的地址了,然后输入账号密码就能登录进去了。
制作bat脚本
制作bat脚本
在C:\software\minio
目录下创建minio.bat
文件:
@echo off
minio.exe server C:\software\minio --console-address ":9001" -address ":9000"
pause
你也可以把bat脚本搞个桌面快捷方式,将来比较方便启动。
通过nssm工具将minio添加到系统服务中
NSSM是一个服务封装程序,它可以将普通exe程序封装成服务,使之像windows服务一样运行。同类型的工具还有微软自己的srvany,不过nssm更加简单易用,并且功能强大。但需要自己安装。
更多想了解nssm,自行百度吧。
由于我提前将nssm.exe
文件放到了C:\software\minio\
目录(该目录已添加到系统环境变量中了)下,所以我可以在任意地方以管理员权限打开终端,执行下面的命令,将minio添加到系统服务中:
nssm install minio
然后会弹出一个窗口,你参考下面的配置:
几个值可能看不清,我单独再列一下:
参数值 | 值 |
---|---|
Application Path | C:\software\minio\minio.exe |
Startup directory | C:\software\minio |
Arguments | server C:\software\minio --console-address ":9001" -address ":9000" |
然后你在服务中就能找到minio服务了。
我把它设置为手动,将来用用的时候手动终端中启动。
后续就可以通过管理员权限打开终端,执行启动、停止等命令:
C:\Windows\System32>nssm start minio
minio: START: 操作成功完成。
C:\Windows\System32>nssm stop minio
minio: STOP: 操作成功完成。
更多命令:
安装服务:nssm install 服务名
删除服务:nssm remove 服务名
删除服务确定:nssm remove 服务名 confirm
修改服务(显示界面修改):nssm edit 服务名
启动服务:nssm start 服务名
停止服务:nssm stop 服务名
重启服务:nssm restart 服务名