【MinIO新版本】Windows部署MinIO对象存储

Windows部署MinIO对象存储

前言

MinIO 是一款高性能、开源S3兼容对象存储,主打AI数据湖、业务文件存储、静态资源托管,支持私有化部署、多云适配,也是目前后端项目最常用的自建文件存储中间件。本文基于MinIO中文官网原版文档,从零标准化部署,全程可复现、无冗余操作。

官网地址汇总

✅ MinIO中文官网:https://www.minio.org.cn/

✅ MinIO Windows中文文档:https://www.minio.org.cn/docs/minio/windows/index.html

✅ Windows官方下载地址:https://www.minio.org.cn/download.shtml#/windows

一、MinIO核心优势(官网整理)

  • 双授权协议:开源AGPL v3免费商用、企业商业授权可选
  • 极致高性能:业界最快对象存储,集群读325GiB/s、写165GiB/s
  • 百分百S3兼容:适配AWS S3 V2/V4 API,项目迁移零改代码
  • 云原生适配:原生支持K8s,适配公有云、私有云、边缘设备
  • 企业级能力:多站点复制、加密存储、文件防删除、IAM权限管控
  • 轻量化:程序包小于100MB,Windows/ARM设备均可部署

适用场景:后端项目图片/附件存储、本地测试文件托管、AI数据集存储、小型团队私有文件服务

二、标准化目录搭建

2.1 部署环境

  • 操作系统:Windows10 64位
  • 部署模式:单节点单磁盘(开发测试专用)
  • 部署盘符:推荐D盘(规避C盘权限、空间不足问题)

2.2 固定三级目录(必建,不要改名)

在D盘新建根目录 E:\disk_software\IT\MinIO,内部新建3个子文件夹,分工隔离:

shell 复制代码
E:\disk_software\IT\MinIO
├─ bin    # 存放minio.exe运行程序
├─ data   # 存储桶、上传文件、对象数据目录
└─ logs   # 服务运行日志目录,排查报错专用

2.3 程序下载放置

  1. 打开上方官方下载链接,下载Windows版 minio.exe
  2. 将exe文件直接放入 E:\disk_software\IT\MinIO\bin
  3. 禁止双击直接打开exe,必须通过bat脚本参数启动

⚙️ 三、编写一键启动脚本 start-minio.bat

3.1 脚本存放位置

脚本放置路径:E:\disk_software\IT\MinIO\start-minio.bat(和bin同级)

3.2 完整可直接复制脚本

bash 复制代码
@echo off
:: 适配中文日志,防止控制台乱码
chcp 65001
echo.
echo ===================== MinIO 对象存储启动服务 =====================
echo [系统提示] 正在加载配置,启动存储服务...
echo.

:: 设置cmd窗口标题
title MinIO文件对象存储服务

:: ========== 自定义管理员账号密码 ==========
setx MINIO_ROOT_USER "minio"
setx MINIO_ROOT_PASSWORD "minioadmin"

:: ========== 端口配置(可自行修改) ==========
:: 浏览器控制台访问端口
set console_port=":9000"
:: 后端SDK、API调用端口(重点:代码连这个端口)
set api_port=":9001"

:: ========== 路径固定配置 ==========
set data_path="E:\disk_software\IT\MinIO\data"
set logs_path="E:\disk_software\IT\MinIO\logs\minio.log"

:: 切入程序目录,启动服务
cd E:\disk_software\IT\MinIO\bin
minio.exe server %data_path% --console-address %console_port% --address %api_port% >%logs_path%

echo [启动成功] 控制台地址:http://localhost:9000
echo [启动成功] API对接地址:http://localhost:9001
pause

3.3 核心参数详解

配置项 作用说明 使用场景
9000端口 Web可视化控制台端口 浏览器登录、手动管理文件
9001端口 S3标准API业务端口 Java/Go/Python SDK代码对接
setx 账号密码 写入系统用户环境变量 自定义后台登录凭据

四、服务启动

  1. 双击运行 start-minio.bat 启动服务
  2. cmd窗口无报错即为启动成功,运行期间不可关闭窗口
  3. 浏览器访问:http://localhost:9000

浏览器访问

五、新版MinIO权限核心问题

目前官网直下载全部为最新版本,新版本无下拉权限选择、无法可视化设置Public公开访问,所有新建桶固定权限如下:

test

Created on: Sun, Jun 21 2026 11:01:10 (GMT+8)

Access: PRIVATE

新版权限锁定原因:

  • 版本阉割改动 :2025年下半年起MinIO新版,彻底移除Web控制台可视化一键改桶权限功能,取消Public/Authenticated读写快捷选项
  • 安全机制升级:适配SEC、金融合规规则,官方废弃简易一键公开外链功能,规避文件泄露风险
  • 运行模式变更 :Windows单节点默认纠删码分布式模式,彻底废弃传统FS文件兼容模式,legacy-fs参数永久废弃

六、故障排查

  1. 端口占用 :cmd执行 netstat -ano | findstr "9000" 杀掉占用进程,修改脚本端口即可
  2. 账号密码错误:关闭全部终端重启脚本,优先使用临时set变量配置账号
  3. SDK上传报错:检查接口端口是否为9001,不要使用9000控制台端口
  4. 服务启动闪退 :①目录含中文空格 ②添加legacy-fs废弃参数,删掉该参数即可启动
  5. 报错flag provided but not defined: -legacy-fs:参数已官方废弃,删除参数,改用桶自定义JSON策略开放权限
  6. 新建桶仅PRIVATE无法改权限:新版功能阉割,降级2025.04稳定版
  7. mc匿名命令XML语法报错 :新版废弃mc anonymous全套授权指令