minio配置自启动(windows),环境配置

发布时间:2026/10/8 21:08:11

minio配置自启动(windows),环境配置 需要获取完整包下载地址链接: https://pan.baidu.com/s/1heVB_JVxgChR4GcL1_iklw?pwdtyiv 提取码: tyiv通过PowerShell 启动脚本读取minio.env再用 NSSM 注册 Windows 服务。最终目录D:\minio\ ├── bin\ │ ├── minio.exe │ ├── mc.exe │ └── nssm.exe ├── certs\ │ ├── public.crt │ └── private.key ├── config\ │ ├── minio.env ├── data\ ├── license\ │ └── minio.license └── logs\ └── start-minio.ps1本说明以D盘为例子需要更换个位置的自行更改。如果使用社区版且不需要许可证可以不放minio.license。minio\bin\mc.exe 可以不需要这个是客户端工具。创建minio.env创建D:\minio\config\minio.env内容如下MINIO_ROOT_USERminio-root-admin MINIO_ROOT_PASSWORD替换成你的32位随机密码 MINIO_VOLUMESD:\minio\data MINIO_ADDRESS:9000 MINIO_CONSOLE_ADDRESS:9001 MINIO_CERTS_DIRD:\minio\certs MINIO_SERVER_URLhttps://s3.example.com MINIO_BROWSER_REDIRECT_URLhttps://s3-console.example.com MINIO_LICENSED:\minio\license\minio.license注意等号左右不要留空格。不要给值加反引号。如果没有许可证要求删除最后一行。域名替换成你的实际域名。certs证书换成自己的证书。创建启动脚本创建D:\minio\start-minio.ps1写入$ErrorActionPreference Stop $MinioExe D:\minio\bin\minio.exe $EnvFile D:\minio\config\minio.env if (-not (Test-Path $MinioExe)) { throw 找不到 MinIO 程序$MinioExe } if (-not (Test-Path $EnvFile)) { throw 找不到配置文件$EnvFile } # 读取 minio.env将变量加载到当前进程 Get-Content $EnvFile -Encoding UTF8 | ForEach-Object { $line $_.Trim() # 忽略空行和注释 if (-not $line -or $line.StartsWith(#)) { return } if ($line -notmatch ) { throw 无效的配置行$line } $name, $value $line -split , 2 $name $name.Trim() $value $value.Trim() [Environment]::SetEnvironmentVariable( $name, $value, [EnvironmentVariableTarget]::Process ) } if (-not $env:MINIO_ROOT_USER) { throw 未配置 MINIO_ROOT_USER } if (-not $env:MINIO_ROOT_PASSWORD) { throw 未配置 MINIO_ROOT_PASSWORD } if (-not $env:MINIO_VOLUMES) { throw 未配置 MINIO_VOLUMES } $Arguments ( server $env:MINIO_VOLUMES --address $env:MINIO_ADDRESS --console-address $env:MINIO_CONSOLE_ADDRESS ) if ($env:MINIO_CERTS_DIR) { $Arguments ( --certs-dir $env:MINIO_CERTS_DIR ) } # 仅 AIStor 等需要许可证的版本使用 if ($env:MINIO_LICENSE) { if (-not (Test-Path $env:MINIO_LICENSE)) { throw 找不到许可证$($env:MINIO_LICENSE) } $Arguments ( --license $env:MINIO_LICENSE ) } $MinioExe Arguments exit $LASTEXITCODE如果你的 MinIO 版本不支持--license参数删除minio.env中的MINIO_LICENSED:\minio\license\minio.license脚本就不会传递许可证参数。手动测试以管理员身份打开 PowerShellpowershell.exe -NoProfile -ExecutionPolicy Bypass -File D:\minio\start-minio.ps1成功后通常可以访问S3 APIhttps://服务器地址:9000 管理控制台https://服务器地址:9001按CtrlC停止测试。如果启动失败先直接检查版本及参数D:\minio\bin\minio.exe --version D:\minio\bin\minio.exe server --help注册 Windows 服务将 NSSM 的nssm.exe放到D:\minio\bin\nssm.exe然后用管理员 PowerShell 执行$Nssm D:\minio\bin\nssm.exe $PowerShell C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe $Nssm install MinIO $PowerShell -NoProfile -NonInteractive -ExecutionPolicy Bypass -File D:\minio\start-minio.ps1设置工作目录 $Nssm set MinIO AppDirectory D:\minio设置标准输出和错误日志 $Nssm set MinIO AppStdout D:\minio\logs\minio-stdout.log $Nssm set MinIO AppStderr D:\minio\logs\minio-stderr.log开启日志轮转单个日志最大约 100 MB $Nssm set MinIO AppRotateFiles 1 $Nssm set MinIO AppRotateOnline 1 $Nssm set MinIO AppRotateBytes 104857600设置服务自动启动及异常重启 $Nssm set MinIO Start SERVICE_AUTO_START $Nssm set MinIO AppExit Default Restart $Nssm set MinIO AppRestartDelay 5000启动服务Start-Service MinIO验证服务查看状态Get-Service MinIO正常结果应为Status Name DisplayName ------ ---- ----------- Running MinIO MinIO查看监听端口Get-NetTCPConnection -State Listen | Where-Object LocalPort -in 9000, 9001测试健康检查Invoke-WebRequest https://127.0.0.1:9000/minio/health/live -SkipCertificateCheck如果当前 Windows PowerShell 不支持-SkipCertificateCheck可以使用curl.exe -k https://127.0.0.1:9000/minio/health/live服务管理命令Start-Service MinIO Stop-Service MinIO Restart-Service MinIO Get-Service MinIO修改minio.env后重启即可Restart-Service MinIO查看日志Get-Content D:\minio\logs\minio-stdout.log -Tail 100 Get-Content D:\minio\logs\minio-stderr.log -Tail 100实时查看Get-Content D:\minio\logs\minio-stdout.log -Tail 50 -Wait文件权限minio.env包含管理员密码建议限制访问icacls D:\minio\config\minio.env /inheritance:r icacls D:\minio\config\minio.env /grant:r Administrators:F SYSTEM:F保护私钥icacls D:\minio\certs\private.key /inheritance:r icacls D:\minio\certs\private.key /grant:r Administrators:F SYSTEM:F如果以后将服务改为专用账户运行还需要给该账户授予D:\minio\bin读取和执行D:\minio\config读取D:\minio\certs读取D:\minio\data修改D:\minio\logs修改删除服务如果需要重新注册Stop-Service MinIO -ErrorAction SilentlyContinue D:\minio\bin\nssm.exe remove MinIO confirm这样配置后MinIO 会读取D:\minio\config\minio.env启动并随 Windows 开机自动启动异常退出后约 5 秒自动重启。
延伸阅读

更多相关文章

2026/10/8 21:08:11

Superpowers技能包实战:从安装到调优,让AI按流程干活

最近好多人在问 superpowers 这东西到底怎么用——先别急着把它理解成什么神秘魔法,它其实就是一个给 AI 助手装“技能包”的开放项目。我断断续续折腾了两周,把安装、引入、调优、踩坑这几步都完整跑了一遍,今天就把我个人摸出来的流程整理出…

2026/10/8 21:08:11

claude-mem 记忆层设计:存储、检索与注入实战

1. 从零认识 claude-mem:它到底解决什么问题第一次看到claude-mem这个名字,很多人会以为它又是一个套壳的对话客户端。其实不是。claude-mem的核心定位是给 Claude 这类大模型补上一块“长期记忆”的拼图——让模型在跨会话、跨项目的场景下,…

2026/10/8 21:08:11

Claude记忆管理协议:三类Memory Slot工程实践

1. “claude-mem”不是产品,而是开发者圈内正在自发演化的技术共识最近在几个核心开发者社区——包括 Hacker News 的 nightly threads、GitHub trending 的 Python/TypeScript 项目评论区,以及几个专注 LLM 工具链的 Discord 频道里,“claud…

2026/10/8 22:23:47

superpowers技能库深度体验:让Claude Code拥有稳定超能力

如果你最近在折腾 Claude Code,大概率刷到过 superpowers 这个项目。它不是某个单文件脚本,而是一整套可安装、可扩展的 skills 技能库,目标就是给 AI 装上"超能力"——拿到任务先规划、写代码先测试、出 bug 先定位。这项目在 Git…

2026/10/8 22:23:47

2026年8个AI写作辅助平台实测:TaoToken统一Key半天搞定万字论文

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 10:03:18

Jev+Agent接管浏览器:browser-use实战与jev-ultrafast性能优化

1. 从“Jev”说起:为什么我要把Agent接进浏览器“Jev”这个词最近在圈子里出现的频率越来越高,很多人第一次听到会以为是某个新模型的名字,其实它更像是一种思路——把Jev模型的能力当作底座,通过Agent的方式去接管浏览器&#xf…

2026/10/8 10:03:20

多智能体集群实战:DeepAgents编排、MCP与A2A协议及Skills体系

1. 从"单兵作战"到"集群协同":多智能体编排到底在解决什么问题如果你最近在折腾 Agent 相关的东西,大概率会有一种感觉:单个 Agent 能做的事情,其实很快就摸到天花板了。你给它一个提示词,挂几个工…

2026/10/8 6:05:44

无源低通滤波器设计实战:从RC到LC,手把手教你避开那些坑

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 0:02:17

自然数立方等于连续奇数之和:从证明到编程验证

十几年来我一直游走在数学科普和编程教学这两块内容之间,对“看起来像魔法、拆开全是数学”的结论总是格外敏感。最近翻资料时又撞见一句话:任何一个自然数 m 的立方,都可以写成 m 个连续奇数之和。2 的立方等于 3 加 5,3 的立方等…

2026/10/8 0:02:17

C#上位机SSH连接实战:用SSH.NET补齐超时、批量与密钥认证

简介:这是一份基于 C# 开发的 SSH 连接功能半成品工程,原本作为另一个主项目的子功能模块,现独立打包分享。工程采用 WinForms 界面,包含源码、解决方案、安装部署工程、NuGet 依赖包及说明文档,适合正在做远程连接、网…

2026/10/8 0:02:17

Java SpringBoot一体化智能售后系统设计与实现全解析

毕业设计年年做,Java Web 方向的题目翻来覆去就那么几个,但“一体化智能售后系统”这个题,每次看到我都觉得值得认真聊一聊。它不是一个简单 curd 堆出来的管理系统,而是把客户、工单、派单、处理、回访、统计整条链路串起来的一套…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑