洺谦 發表於 2025-9-13 08:40:00

centos系统上部署安装minio - 指南

<style>pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", monospace !important; font-size: 14px !important; line-height: 1.6 !important; padding: 16px !important; margin: 16px 0 !important; background-color: rgba(248, 248, 248, 1) !important; border: 1px solid rgba(225, 228, 232, 1) !important; border-radius: 6px !important; tab-size: 4 !important; -moz-tab-size: 4 !important; max-width: 100% !important; box-sizing: border-box !important }
code { font-family: "Consolas", "Monaco", "Courier New", monospace !important; font-size: 14px !important; white-space: pre !important; word-wrap: normal !important; word-break: normal !important; overflow-wrap: normal !important; display: inline !important; background: rgba(0, 0, 0, 0) !important; border: none !important; padding: 0 !important; margin: 0 !important; line-height: inherit !important }
pre code { background: rgba(0, 0, 0, 0) !important; border: 0 !important; border-radius: 0 !important; display: block !important; line-height: 1.6 !important; margin: 0 !important; max-width: none !important; overflow: visible !important; padding: 0 !important; white-space: pre !important; word-wrap: normal !important; word-break: normal !important; color: inherit !important }
.token.comment, .token.prolog, .token.doctype, .token.cdata { color: rgba(112, 128, 144, 1) !important; font-style: italic !important }
.token.punctuation { color: rgba(153, 153, 153, 1) !important }
.token.atrule, .token.attr-value, .token.keyword { color: rgba(0, 119, 170, 1) !important; font-weight: bold !important }
.token.function, .token.class-name { color: rgba(221, 74, 104, 1) !important; font-weight: bold !important }
.token.selector, .token.attr-name, .token.string, .token.char, .token.builtin, .token.inserted { color: rgba(102, 153, 0, 1) !important }
.token.property, .token.tag, .token.boolean, .token.number, .token.constant, .token.symbol, .token.deleted { color: rgba(153, 0, 85, 1) !important }
.cnblogs-markdown pre, .cnblogs-post-body pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; background-color: rgba(248, 248, 248, 1) !important; border: 1px solid rgba(225, 228, 232, 1) !important; border-radius: 6px !important; padding: 16px !important; margin: 16px 0 !important }
pre, pre, pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important }</style>
      
<style>pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", monospace !important; font-size: 14px !important; line-height: 1.6 !important; padding: 16px !important; margin: 16px 0 !important; background-color: rgba(248, 248, 248, 1) !important; border: 1px solid rgba(225, 228, 232, 1) !important; border-radius: 6px !important; tab-size: 4 !important; -moz-tab-size: 4 !important; max-width: 100% !important; box-sizing: border-box !important }
code { font-family: "Consolas", "Monaco", "Courier New", monospace !important; font-size: 14px !important; white-space: pre !important; word-wrap: normal !important; word-break: normal !important; overflow-wrap: normal !important; display: inline !important; background: rgba(0, 0, 0, 0) !important; border: none !important; padding: 0 !important; margin: 0 !important; line-height: inherit !important }
pre code { background: rgba(0, 0, 0, 0) !important; border: 0 !important; border-radius: 0 !important; display: block !important; line-height: 1.6 !important; margin: 0 !important; max-width: none !important; overflow: visible !important; padding: 0 !important; white-space: pre !important; word-wrap: normal !important; word-break: normal !important; color: inherit !important }
.token.comment, .token.prolog, .token.doctype, .token.cdata { color: rgba(112, 128, 144, 1) !important; font-style: italic !important }
.token.punctuation { color: rgba(153, 153, 153, 1) !important }
.token.atrule, .token.attr-value, .token.keyword { color: rgba(0, 119, 170, 1) !important; font-weight: bold !important }
.token.function, .token.class-name { color: rgba(221, 74, 104, 1) !important; font-weight: bold !important }
.token.selector, .token.attr-name, .token.string, .token.char, .token.builtin, .token.inserted { color: rgba(102, 153, 0, 1) !important }
.token.property, .token.tag, .token.boolean, .token.number, .token.constant, .token.symbol, .token.deleted { color: rgba(153, 0, 85, 1) !important }
.cnblogs-markdown pre, .cnblogs-post-body pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; background-color: rgba(248, 248, 248, 1) !important; border: 1px solid rgba(225, 228, 232, 1) !important; border-radius: 6px !important; padding: 16px !important; margin: 16px 0 !important }
pre, pre, pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important }</style><div class="markdown_views prism-atom-one-dark" id="content_views"><svg style="display: none" xmlns="http://www.w3.org/2000/svg"><path d="M5,0 0,2.5 5,5z" id="raphael-marker-block" stroke-linecap="round" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0)"></path></svg><p>在 CentOS 系统上部署 MinIO 可以通过二进制文件直接安装,也可通过 Docker 部署。以下是最常用的<strong>二进制文件安装方式</strong>,步骤清晰且适合生产环境:</p><p><strong>一、准备工作</strong></p><ol><li><strong>环境要求</strong></li></ol><ul><li class="task-list-item"><input class="task-list-item-checkbox" disabled="disabled" type="checkbox"> CentOS 7/8 系统(推荐 CentOS 8 Stream)</li><li class="task-list-item"><input class="task-list-item-checkbox" disabled="disabled" type="checkbox"> 至少 1GB 内存(生产环境建议 4GB 以上)</li><li class="task-list-item"><input class="task-list-item-checkbox" disabled="disabled" type="checkbox"> 开放端口:9000(API 端口)、9001(控制台端口)</li></ul><p><strong>二、安装步骤</strong><br><strong>1. 创建数据目录和 MinIO 用户(推荐非 root 用户运行)</strong></p>
<pre style="white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important"><code class="prism language-go"># 创建数据存储目录(可自定义路径)
sudo mkdir <span class="token operator">-</span>p <span class="token operator">/</span>data<span class="token operator">/</span>minio
sudo chmod <span class="token operator">-</span>R <span class="token number">755</span> <span class="token operator">/</span>data<span class="token operator">/</span>minio
# 创建专用用户(避免用root运行)
sudo useradd <span class="token operator">-</span>m minio<span class="token operator">-</span>user
sudo chown <span class="token operator">-</span>R minio<span class="token operator">-</span>user<span class="token punctuation">:</span>minio<span class="token operator">-</span>user <span class="token operator">/</span>data<span class="token operator">/</span>minio</code></pre>
<p><strong>2. 下载 MinIO 二进制文件</strong></p>
<pre style="white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important"><code class="prism language-go"># 切换到minio<span class="token operator">-</span>user用户
sudo su <span class="token operator">-</span> minio<span class="token operator">-</span>user
# 下载最新版MinIO(社区版)
wget https<span class="token punctuation">:</span><span class="token operator">/</span><span class="token operator">/</span>dl<span class="token punctuation">.</span>min<span class="token punctuation">.</span>io<span class="token operator">/</span>server<span class="token operator">/</span>minio<span class="token operator">/</span>release<span class="token operator">/</span>linux<span class="token operator">-</span>amd64<span class="token operator">/</span>minio
# 赋予执行权限
chmod <span class="token operator">+</span>x minio
# 验证版本(可选)
<span class="token punctuation">.</span><span class="token operator">/</span>minio <span class="token operator">--</span>version</code></pre>
<p>若wget下载慢,可手动从MinIO 官网获取链接替换。</p><p><strong>3. 临时启动测试(可选)</strong></p>
<pre style="white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important"><code class="prism language-go"># 用minio<span class="token operator">-</span>user用户启动,指定数据目录和控制台端口
<span class="token punctuation">.</span><span class="token operator">/</span>minio server <span class="token operator">/</span>data<span class="token operator">/</span>minio <span class="token operator">--</span>console<span class="token operator">-</span>address <span class="token string">":9001"</span></code></pre>
<ul><li>启动成功后,会显示访问密钥(Access Key)和密钥(Secret Key),默认是minioadmin/minioadmin。</li><li>按Ctrl+C停止临时服务,继续配置系统服务实现开机自启。</li><li></li></ul><p><strong>4. 配置系统服务(推荐生产环境)</strong></p>
<pre style="white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important"><code class="prism language-go"># 退出minio<span class="token operator">-</span>user,回到root用户
exit
# 创建systemd服务文件
sudo vim <span class="token operator">/</span>etc<span class="token operator">/</span>systemd<span class="token operator">/</span>system<span class="token operator">/</span>minio<span class="token punctuation">.</span>service</code></pre>
<p>在文件中添加以下内容(注意替换路径和用户):</p>
<pre style="white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important"><code class="prism language-go"><span class="token punctuation">[</span>Unit<span class="token punctuation">]</span>
Description<span class="token operator">=</span>MinIO Object Storage Service
Documentation<span class="token operator">=</span>https<span class="token punctuation">:</span><span class="token operator">/</span><span class="token operator">/</span>min<span class="token punctuation">.</span>io<span class="token operator">/</span>docs<span class="token operator">/</span>minio<span class="token operator">/</span>linux<span class="token operator">/</span>index<span class="token punctuation">.</span>html
Wants<span class="token operator">=</span>network<span class="token operator">-</span>online<span class="token punctuation">.</span>target
After<span class="token operator">=</span>network<span class="token operator">-</span>online<span class="token punctuation">.</span>target
<span class="token punctuation">[</span>Service<span class="token punctuation">]</span>
User<span class="token operator">=</span>minio<span class="token operator">-</span>user
Group<span class="token operator">=</span>minio<span class="token operator">-</span>user
ExecStart<span class="token operator">=</span><span class="token operator">/</span>home<span class="token operator">/</span>minio<span class="token operator">-</span>user<span class="token operator">/</span>minio server <span class="token operator">/</span>data<span class="token operator">/</span>minio <span class="token operator">--</span>console<span class="token operator">-</span>address <span class="token string">":9001"</span>
Restart<span class="token operator">=</span>always
RestartSec<span class="token operator">=</span><span class="token number">5</span>
Environment<span class="token operator">=</span><span class="token string">"MINIO_ROOT_USER=admin"</span> # 自定义管理员账号
Environment<span class="token operator">=</span><span class="token string">"MINIO_ROOT_PASSWORD=YourStrongPassword"</span> # 自定义强密码
LimitNOFILE<span class="token operator">=</span><span class="token number">65536</span>
<span class="token punctuation">[</span>Install<span class="token punctuation">]</span>
WantedBy<span class="token operator">=</span>multi<span class="token operator">-</span>user<span class="token punctuation">.</span>target</code></pre>
<p>注意:</p><ul><li>MINIO_ROOT_USER和MINIO_ROOT_PASSWORD需替换为自定义的强密码(避免默认值)。</li><li>ExecStart路径需与实际 MinIO 二进制文件位置一致(本例为/home/minio-user/minio)。</li></ul><p><strong>5. 启动并设置开机自启</strong></p>
<pre style="white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important"><code class="prism language-go"># 重载系统服务
sudo systemctl daemon<span class="token operator">-</span>reload
# 启动MinIO
sudo systemctl start minio
# 设置开机自启
sudo systemctl enable minio
# 查看服务状态(确认是否运行正常)
sudo systemctl status minio</code></pre>
<p>若状态为active (running),则表示启动成功。</p><p><strong>三、配置防火墙</strong><br> 允许 9000(API)和 9001(控制台)端口访问:</p>
<pre style="white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important"><code class="prism language-go"># CentOS <span class="token number">7</span><span class="token operator">/</span><span class="token number">8</span> 开放端口
sudo firewall<span class="token operator">-</span>cmd <span class="token operator">--</span>list<span class="token operator">-</span>ports
sudo firewall<span class="token operator">-</span>cmd <span class="token operator">--</span>zone<span class="token operator">=</span>public <span class="token operator">--</span>add<span class="token operator">-</span>port<span class="token operator">=</span><span class="token number">9000</span><span class="token operator">/</span>tcp <span class="token operator">--</span>permanent
sudo firewall<span class="token operator">-</span>cmd <span class="token operator">--</span>zone<span class="token operator">=</span>public <span class="token operator">--</span>add<span class="token operator">-</span>port<span class="token operator">=</span><span class="token number">9001</span><span class="token operator">/</span>tcp <span class="token operator">--</span>permanent
sudo firewall<span class="token operator">-</span>cmd <span class="token operator">--</span>reload
# (可选)关闭SELinux(若访问有问题时尝试)
sudo setenforce <span class="token number">0</span> # 临时关闭
sudo sed <span class="token operator">-</span>i <span class="token string">'s/SELINUX=enforcing/SELINUX=disabled/'</span> <span class="token operator">/</span>etc<span class="token operator">/</span>selinux<span class="token operator">/</span>config # 永久关闭(需重启)</code></pre>
<p><strong>四、访问 MinIO 控制台</strong></p><ul><li>打开浏览器,访问 http://服务器IP:9001。</li><li>使用步骤 4 中配置的MINIO_ROOT_USER和MINIO_ROOT_PASSWORD登录。</li><li>登录后可创建存储桶(Bucket)、上传文件测试功能。</li></ul><p><strong>五、常用操作</strong></p><ul><li>停止服务:sudo systemctl stop minio</li><li>查看日志:sudo journalctl -u minio -f</li><li>修改配置:编辑/etc/systemd/system/minio.service后,执行systemctl daemon-reload<br> &amp;&amp; systemctl restart minio</li></ul><p><strong>注意事项</strong></p><ul><li>数据备份:定期备份/data/minio目录,避免数据丢失。</li><li>安全加固:生产环境需配置 HTTPS(参考MinIO TLS 配置)。</li><li>集群部署:如需高可用,可部署 MinIO 集群(至少 4 节点),参考官方集群指南。</li></ul><p>通过以上步骤,即可在 CentOS 上完成 MinIO 的部署,快速搭建兼容 S3 协议的对象存储服务。</p></div>

---

<div style="background: rgba(253, 244, 255, 1); padding: 15px 18px; border-left: 3px solid rgba(168, 85, 247, 1); border-radius: 6px; margin-top: 30px">
<h3 style="color: rgba(126, 34, 206, 1); margin-top: 0; font-size: 16px"> 精选好课</h3>
<p style="color: rgba(102, 102, 102, 1); font-size: 13px; margin-bottom: 12px">以下资源可以帮助你进一步提升:</p>
<ol style="line-height: 2; font-size: 14px; padding-left: 20px">
<li><strong>趣谈Linux操作系统</strong><br>
    <span style="color: rgba(136, 136, 136, 1); font-size: 13px">‍ 刘超 | 轻松理解Linux操作系统核心原理</span></li>
</ol>
<hr style="border-top: 1px solid rgba(225, 228, 232, 1); border-right: none; border-bottom: none; border-left: none; margin: 15px 0">
<p style="font-size: 14px; color: rgba(51, 51, 51, 1); margin-bottom: 5px">️ 实践工具</p>
<ul style="line-height: 2; font-size: 14px; padding-left: 20px">
<li>【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中</li>
</ul>
</div><br><br>
来源:https://www.cnblogs.com/wzzkaifa/p/19088818
頁: [1]
查看完整版本: centos系统上部署安装minio - 指南