1.下载
minio 分企业版和社区版,企业版需要付费购买授权证书,默认官网进去的 download 下载页面下的是企业版,在页面上找到菜单 COMMUNITY 会弹出 Community Edition 一个按钮,点击这个按钮进入社区版下载页面
2.手动启动
# 这里下载好的 minio 放在目录 /opt/minio 下,所以需要以下步骤
mkdir /opt/minio
mkdir /opt/data
MINIO_ROOT_USER=akim MINIO_ROOT_PASSWORD=abc_123 ./minio server /opt/minio/data --console-address :9003 --address :9002 ## /opt/minio/data
存储目录;--console-address 是 UI 界面的端口 --address 是api端口
3.开机自启动
1.在minio根目录下新建start.sh:
#!/bin/bash
ROOT_DIR=/opt/minio
export MINIO_ROOT_USER=akim
export MINIO_ROOT_PASSWORD=akim_123app
nohup $ROOT_DIR/minio server $ROOT_DIR/data --address=":9002" --console-address=":9003" &
echo $(ps -ef|grep "minio server"|grep -v "grep"|awk '{print $2}') > /var/run/minio_9002.pid
# 保存成功后,给整个目录授权
chmod 777 -R /opt/minio
2.进入init.d目录
cd /etc/init.d
3.创建服务文件
vim minio
4.编写脚本
#!/bin/bash
### BEGIN INIT INFO
# Provides: minio_9002
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: minio service
# Description: minio service
### END INIT INFO
EXEC=/opt/minio/start.sh
PIDFILE=/var/run/minio_9002.pid
case "$1" in
start)
if [ -f $PIDFILE ]
then
echo "$PIDFILE exists, process is already running or crashed"
else
echo "Starting Minio Service..."
sh $EXEC
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo "Stopping Minio Service..."
kill -9 $PID
rm -rf $PIDFILE
echo "Minio stopped"
fi
;;
*)
echo "Please use start or stop as first argument"
;;
esac
exit 0
5.修改文件权限:
chmod 777 /etc/init.d/minio
6.添加或删除服务
添加:
chkconfig --add minio
删除:
chkconfig --del minio
7.启动、停止或重启服务
启动:
service minio start
停止:
service minio stop
重启:
service minio restart
8.设置开启或关闭开机启动
开启:
chkconfig minio on
关闭:
chkconfig minio off
9.查看es进程,验证是否已启动
ps -ef | grep minio
#打开页面访问登录成功即可
http://localhost:9003
注意事项:
1.项目集成minio,使用的端口是--address的9002而不是console-address的9003
2.AccessKey和SecretKey的查看方式:
在minio管理界面的Identity菜单下,找到Users菜单,点击右边的Create Users,录入账号、密码和勾选权限,保存后来到列表,选择刚才创建的账号点击进去,在左边选择Service Accounts选项卡,点击右边Create service account,进入创建界面,点击Create按钮完成,最后显示AccessKey和SecretKey,还可以下载下来
4.阉割的minio
2025-05 以后的版本,控制台已经取消了 Administrator、User 菜单,操!!!
解决方案:下载 mc 客户端工具手动创建。
下载地址:mc 工具下载地址
使用文档地址:文档地址
# 构建客户端链接配置
# mc alias set alias名称/ http://MINIO-SERVER MYUSER MYPASSWORD
./mc alias set minio/ http://127.0.0.1:9001 minioadmin minioadmin
# 上述命令解释
# minio:alias 名称
# http://127.0.0.1:9001 控制台地址
# minioadmin:管理员账号
# minioadmin:密码
# 创建用户
# mc admin user add ALIAS ACCESSKEY SECRETKEY
# 将 ALIAS 替换 为 MinIO 部署的 alias 。
# 将 ACCESSKEY 替换为 用户的访问密钥。MinIO 允许在用户创建后通过 mc admin user info 命令 检索访问密钥。
# 将 SECRETKEY 替换为 用户的秘密密钥。MinIO 不 提供任何方法来检索一旦设置的秘密 密钥。
# 为 ACCESSKEY 和 SECRETKEY 分别指定一个独特、随机且较长的 字符串。您的组织可能有关于生成用于访问或秘密密钥的值的特定内部 或监管要求。
./mc admin user add minio VoojEqEgWlZKzhwh6PcZ vjULzgWmjX0u5w4HOdemEOMxm2P72zu7OcJN0Jsn
# 上述命令解释
# minio:为构建客户端链接设置的 alias 名称
# VoojEqEgWlZKzhwh6PcZ:AccessKey
# vjULzgWmjX0u5w4HOdemEOMxm2P72zu7OcJN0Jsn:SecretKey
# 授权读写
# mc admin policy attach ALIAS readwrite --user=USERNAME
# 将 USERNAME 替换为上一步中创建的 ACCESSKEY。
./mc admin policy attach minio readwrite --user=VoojEqEgWlZKzhwh6PcZ
# 上述命令解释
# minio:为构建客户端链接设置的 alias 名称
# VoojEqEgWlZKzhwh6PcZ:AccessKey
# 删除用户
# mc admin user rm ALIAS USERNAME
# 将 ALIAS 替换为 MinIO 部署的 alias 。
# 将 USERNAME 替换为要删除的 用户的名字。
./mc admin user rm minio VoojEqEgWlZKzhwh6PcZ
# 上述命令解释
# minio:为构建客户端链接设置的 alias 名称
# VoojEqEgWlZKzhwh6PcZ:AccessKey
特么控制台现连删除桶都只能通过mc工具了,这吃相,无敌了!!!!
# 创建桶,嗯!控制台还能用 ./mc mb minio/test-bucket # 命令解释 # mb:创建桶的指令 # minio:构建客户端链接设置的 alias 名称 # test-bucket:需要创建的桶名 # 删除桶 ./mc rb minio/test-bucket # 注意,这条执行需清空桶内对象,如果需要强制删除,可以增加参数 --force # 例:./mc rb minio/test-bucket --force # 命令解释 # rb:删除桶的指令 # minio:构建客户端链接设置的 alias 名称 # test-bucket:需要创建的桶名 # 授权桶为公开模式,如果提示:mc: Please use 'mc anonymous',用下一条指令 ./mc policy set public minio/test-bucket # 设置Access为PRIAVE的为公共读写 PUBLIC,上一条命令并不能设置为公开模式,用这条指令 ./mc anonymous set public minio/test-bucket # 设置为只读 ./mc anonymous set download minio/test-bucket # 设置为只写 ./mc anonymous set upload minio/test-bucket # 查看当前策略 ./mc anonymous get minio/test-bucket