只需一个minio.exe文件加几条命令,即可在Windows上快速搭建本地S3兼容对象存储服务,支持上传下载、预签名链接、分片上传,Python/Java/Go代码无需修改即可联调;需手动创建D:\minio\bin、data、logs三级目录,配置环境变量后以管理员身份运行minio.exe server命令启动,通过https://www.php.cn/link/b99c61acedb54c5253819b7b4f2d88c6访问控制台并创建存储桶,再用mc或控制台配置策略,最后用boto3验证SDK接入成功。

要在Windows系统上快速搭建一个可立即用于开发测试的本地对象存储服务,你不需要装虚拟机、不用配数据库,只要一个minio.exe文件加几条命令,就能获得和云上S3完全一致的HTTP接口——上传、下载、生成预签名链接、分片上传全支持,所有Python/Java/Go代码无需改一行就能本地联调。
准备安装环境与目录结构
在D盘根目录新建文件夹 【D:\minio】,内部严格按三级结构创建:
— bin(放minio.exe和mc.exe)
— data(MinIO自动写入桶和对象数据,不能是C盘用户目录或含中文/空格路径)
— logs(可选,用于后续排查启动失败问题)。
这一步必须手动建好再放文件,不能靠解压工具自动创建嵌套路径——有些RAR解压器会把data\误识别为相对路径,导致启动时提示Unable to initialize backend。
从官网 https://www.minio.org.cn/download.shtml#/windows 下载 minio.exe(必选)和 mc.exe(推荐一并下载),放入 D:\minio\bin。
配置管理员凭据并启动服务
以管理员身份打开 PowerShell,一次性执行以下三步:
① 设置根账号(用户名至少3字符,密码至少8字符):setx MINIO_ROOT_USER "devadmin"setx MINIO_ROOT_PASSWORD "MinIO@2026test"
② 切换到bin目录:cd /d D:\minio\bin
③ 启动服务(关键参数不能漏):minio.exe server D:\minio\data --console-address ":9000" --address ":9001"
注意:启动后控制台会持续输出日志,不要关窗口;9000端口是Web控制台,9001才是程序SDK连接用的API端口,填反会导致boto3报错Connection refused。
访问控制台并创建首个存储桶
打开浏览器,访问 https://www.php.cn/link/b99c61acedb54c5253819b7b4f2d88c6。
Windows 桌面自动化技能,支持鼠标控制(移动/点击/拖拽/滚轮/截图)、键盘输入(文字输入/按键/组合键)、窗口管理(查找/聚焦/最大化/最小化/关闭/移动)、截图并发送文件。提供两种截图方式:Python pyautogui 截图(集成在自动化流程中)和 PowerShell + .NET 零依赖截图(支持区域截图和多显示器)。当用户需要自动化 Windows 桌面操作、控制鼠标键盘、管理窗口、执行 GUI 自动化任务、截图发送文件时使用。
用刚才设置的 devadmin 和 MinIO@2026test 登录。
点击左上角 + Create Bucket,输入桶名如 test-uploads(只能小写字母、数字、短横线,且不能以短横线开头或结尾)→ 点击 Create。
此时桶已创建成功,但默认禁止匿名读写——如果你要用前端直传或临时链接,下一步必须配策略。
开放桶的匿名读写权限(可选)
方法一:用mc命令行(推荐,稳定可靠)
在PowerShell中执行:mc alias set myminio http://localhost:9001 devadmin MinIO@2026testmc anonymous set download myminio/test-uploads
方法二:通过Web控制台(仅限新版本v2024+)
进入 test-uploads 桶 → 点击右上角 ⋯ → Edit Policy → 选择 Read Only 或 Read and Write → 保存。
注意:旧版MinIO控制台不显示Policy编辑入口,必须用mc命令,否则前端上传会返回403 Forbidden。
验证Python SDK接入是否成功
安装boto3:pip install boto3
新建 test_upload.py,内容如下:
import boto3<br>client = boto3.client("s3",<br> endpoint_url="http://localhost:9001",<br> aws_access_key_id="devadmin",<br> aws_secret_access_key="MinIO@2026test",<br> region_name="us-east-1")<br>client.upload_file("test.txt", "test-uploads", "test.txt")<br>print("上传成功")
确保当前目录存在 test.txt 文件,然后运行脚本。若输出 上传成功,且刷新控制台能看到该文件,说明本地S3兼容服务已就绪。

















