Docker 部署 MinIO 全指南

Docker 搭建 Minio 容器 (完整详细版) Docker 搭建 Minio 容器 (完整详细版) + Java SDK的API操作 阅读详情
AI摘要

本文详细介绍了如何通过 Docker 部署 MinIO 对象存储服务,涵盖从基础概念到生产环境部署的全过程。包括硬件与软件准备、镜像下载、单节点及高可用部署方法,并提供网络配置、安全提示和常见问题解决方案。

1. MinIO 简介

💡 什么是 MinIO?

MinIO 是一个轻量级、高性能、开源的对象存储服务,专为云原生应用设计。
它支持 S3 API,可直接与 AWS SDK、Rclone、Nextcloud、Backup 工具等集成。

🌟 核心特点

  • 兼容 S3 API:可直接替代 Amazon S3。
  • 极高性能:单节点可轻松达到百 Gbps 吞吐。
  • 轻量部署:单个二进制或容器即可运行。
  • 水平扩展:支持分布式多节点集群。
  • 完备安全机制:支持访问密钥、HTTPS、策略控制。

🧭 典型应用场景

场景示例适用人群
文件/图片存储Web/APP 上传、CDN 资源新手/中级
备份与归档数据库备份、日志归档开发者/运维
AI / 大数据模型、训练集存储高级工程师

2. 部署前准备

2.1 硬件要求

资源开发环境(练手)生产环境(业务使用)说明
CPU≥ 2 核≥ 4 核生产建议更高
内存≥ 4 GB≥ 8 GBMinIO 对内存性能敏感
磁盘≥ 20 GB≥ 100 GB (SSD)生产建议使用 SSD

2.2 软件要求

  • Docker:≥ 24.0.0
    检查版本:

    docker --version
    
  • Docker Compose:≥ v2.26.1
    检查版本:

    docker compose version
    

如未安装,可使用轩辕一键安装脚本:
👉 https://xuanyuan.cloud/install/linux

执行一键安装命令

登录 Linux 服务器,直接复制粘贴下面的命令,回车执行:

bash <(wget -qO- https://xuanyuan.cloud/docker.sh)

2.3 网络与安全提示

  • 默认端口:

    • Web 控制台:9001
    • API 服务:9000
  • ⚠️ 生产环境请勿暴露公网端口!
    建议反向代理或启用 TLS 加密访问。

  • 国内环境推荐使用轩辕镜像加速源。


3. 下载 MinIO 镜像

3.1 使用轩辕镜像(推荐)

# 拉取最新稳定版 MinIO 镜像
docker pull xxx.xuanyuan.run/minio/minio:latest

# (可选)改名为官方镜像名
docker tag xxx.xuanyuan.run/minio/minio:latest minio/minio:latest
# 删除临时标签,节省空间
docker rmi xxx.xuanyuan.run/minio/minio:latest

3.2 使用官方源(备用,如果可用)

docker pull minio/minio:latest

3.3 验证镜像下载

docker images | grep minio

示例输出:

REPOSITORY        TAG       IMAGE ID       CREATED         SIZE
minio/minio       latest    e8b734f7b8aa   6 days ago      250MB

4. 快速部署(单节点版)

MinIO 单节点非常适合开发测试或小型项目。

4.1 docker run 一键启动

docker run -d \
  --name minio-server \                # 容器名称
  -p 9000:9000 \                       # API 端口
  -p 9001:9001 \                       # 控制台端口
  -e MINIO_ROOT_USER=admin \           # 管理员用户名
  -e MINIO_ROOT_PASSWORD=YourStrongPwd2024! \  # 管理员密码(务必强密码)
  -v minio-data:/data \                # 数据持久化卷
  --restart unless-stopped \           # 自动重启
  minio/minio server /data --console-address ":9001"

参数说明

参数作用
-e MINIO_ROOT_USER设置登录用户名
-e MINIO_ROOT_PASSWORD登录密码(≥8位)
-v minio-data:/data持久化存储数据
--console-address ":9001"控制台端口
--restart unless-stopped自动重启策略

4.2 使用 Docker Compose 部署(推荐)

创建 docker-compose.yml
version: "3.8"
services:
  minio:
    image: xxx.xuanyuan.run/minio/minio:latest
    container_name: minio-server
    environment:
      - MINIO_ROOT_USER=admin
      - MINIO_ROOT_PASSWORD=YourStrongPwd2024!
    volumes:
      - minio-data:/data
    ports:
      - "9000:9000"
      - "9001:9001"
    command: server /data --console-address ":9001"
    restart: unless-stopped

volumes:
  minio-data:
启动服务
docker compose up -d
查看状态
docker ps | grep minio

若状态为 Up,说明服务已启动。


5. 验证与访问

5.1 打开 Web 控制台

浏览器访问:

👉 http://localhost:9001

输入你设置的:

  • 用户名:admin
  • 密码:YourStrongPwd2024!

进入后即可上传、管理文件。


5.2 使用命令行连接(mc 客户端)

安装 MinIO 客户端(mc):

wget https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mc
sudo mv mc /usr/local/bin/

配置连接:

mc alias set local http://localhost:9000 admin YourStrongPwd2024!

验证连接:

mc ls local

6. 创建存储桶与上传文件

# 创建桶
mc mb local/mybucket

# 上传文件
mc cp ./test.jpg local/mybucket/

# 查看文件
mc ls local/mybucket/

访问方式:

http://localhost:9000/mybucket/test.jpg

7. 生产环境部署建议

项目推荐做法
⚙️ 数据持久化挂载到本地磁盘或 NAS
🔒 安全访问启用 HTTPS (证书路径: /root/.minio/certs/)
👥 用户权限使用 Access Key / Secret Key 控制访问
🧱 高可用使用 MinIO 分布式部署(见下节)

8. 高可用部署(分布式 MinIO)

8.1 基本结构

4 个节点(最小推荐数量):

node1:/data1 node2:/data2 node3:/data3 node4:/data4

8.2 启动命令示例(单机模拟4节点)

docker run -d --name minio-distributed \
  -p 9000:9000 -p 9001:9001 \
  -v /mnt/data1:/data1 -v /mnt/data2:/data2 \
  -v /mnt/data3:/data3 -v /mnt/data4:/data4 \
  -e MINIO_ROOT_USER=admin \
  -e MINIO_ROOT_PASSWORD=YourStrongPwd2024! \
  minio/minio server /data{1...4} --console-address ":9001"

这样 MinIO 就会自动启用分布式模式,实现冗余和高可用。


9. 备份与恢复

9.1 备份数据

mc mirror local/mybucket /backup/mybucket

9.2 恢复数据

mc mirror /backup/mybucket local/mybucket

生产环境可用 crontab 定时执行备份任务。


10. 常见问题排查

问题可能原因解决方案
无法访问 9000/9001防火墙拦截关闭或放行端口
登录失败密码错误或未设置检查 MINIO_ROOT_USER/PASSWORD
上传报错 “permission denied”权限不足检查宿主机挂载目录权限
容器重启后数据丢失未挂载卷使用 -v minio-data:/data

11. 参考文档


✅ 总结

目标操作
🚀 快速上手docker run ...
🧱 稳定部署用 Docker Compose
🧩 扩展场景分布式 + HTTPS + Access Key
💾 备份保障mc mirror 定期备份

到这里,你已经能独立部署一个完整可用的 MinIO 服务。
无论是自用、开发、还是生产环境,都能满足稳定与高性能需求。

Docker 搭建 Minio 对象存储服务 整理了一套《前端大厂面试宝典》,包含了HTML、CSS、JavaScript、HTTP、TCP协议、浏览器、VUE、React、数据结构和算法,一共201道面试题,并对每个问题作出了回答和解析。 阅读详情

相关推荐

Docker部署MinIO分布式存储系统+SpringBoot整合MinIO

中文官网MinIO Container中文文档Minio是一个高性能、分布式对象存储系统,兼容Amazon S3 API。它可以通过搭建私有云来提供存储服务,也可以作为公共云中的对象存储服务。Minio的实现原理是基于分布式的架构,数据被分割为多个部分并存储在不同的服务器上。这些服务器通过一个一致性哈希算法将数据划分为不同的分片,并且使用Erasure Coding来提供数据冗余和容错能力。客户端通过S3协议与Minio进行交互,可以像操作Amazon S3一样进行数据的上传、下载、删除等操作。

阿木木AEcru的博客 2830

使用Docker搭建minio

【代码】使用Docker搭建minio。

LjH01250的博客 7652

基于 Docker 部署的 Minio 扩容

常见的集群扩容方法可分为两类:水平扩容和垂直扩容。水平扩容,一般指通过增加节点数扩展系统性能;而垂直扩容则指提升各节点自身的性能,例如增加节点的磁盘存储空间。直接采用垂直扩容方式扩容MinIO集群的节点磁盘空间,会为集群运行带来若干问题,官方也并不推荐。因此本文主要介绍基于 docker 部署的 MinIO 两种水平扩容方式:对等扩容和联邦扩容。

2302_78308374的博客 862

Docker部署Minio (服务器上部署Minio)

使用Docker在服务器上快速部署Minio的参考教程

qq_63055262的博客 1万+

docker部署minio

MinIO 的官方 Docker 镜像托管在(而非 Docker Hub),以下是其版本分类及常见标签说明:环境对应信息:amd: 32位X86amd64: 64位X86arm: 32位ARMarm64: 64位ARM。

hello world 926

统信UOS V20 安装mysql5.7.42详细教程

到bin/下,执行下面的命令,初始化mysql服务信息,得到数据库的初始密码,实际如果目录不一样记得换成自己的目录。下载后通过远程将安装包上传至服务器,我这里将安装包上传至/usr/local/mysql 下。ps:这时候如果还是不能远程访问的话,可能是防火墙的原因,命令行执行以下命令即可。再次登录,发现缺少 libtinfo.so.5文件,再次建立软连接。登录,发现报错,提示缺少libncurses.so.5文件,使用。创建 /var/lib/ 下mysql目录。登录成功,修改密码,设置远程访问。

为谁伫立在风中 1万+

Docker部署MinIO:从零配置HTTPS域名访问全攻略

本文详细介绍了如何使用Docker部署MinIO并配置HTTPS域名访问,涵盖从基础准备、证书获取(自签名、Let's Encrypt、商业CA)到Nginx反向代理和Docker Compose全自动部署的全流程。特别适合需要在Linux环境下快速搭建安全对象存储服务的开发者,提供生产环境优化建议和常见问题排查方法。

herb5的博客 605

Vue3实战:从零构建ElementPlus后台管理系统全流程

本文详细介绍了从零开始使用Vue3和ElementPlus构建后台管理系统的全流程。内容涵盖环境准备、项目初始化、Vite配置、SCSS样式体系搭建、ElementPlus组件库引入与配置,以及封装可复用的SvgIcon组件进行图标管理,旨在帮助开发者快速搭建现代化、可维护的中后台应用。

weixin_29011239的博客 161

MinIO 实战:使用 Docker Compose 部署 MinIO 集群

MinIO 是一个高性能、兼容 AWS S3 的开源对象存储解决方案。它适用于存储大量非结构化数据,比如照片、视频、日志文件等。MinIO 可以在单机模式下运行,也可以配置为高可用的分布式模式。在本教程中,我们将使用 Docker Compose 在本地环境中部署一个三节点的 MinIO 集群。

SmartSi 8336

群晖NAS搭建Git Server避坑指南:从SSH配置到权限管理的完整流程

本文提供了一份详尽的群晖NAS搭建Git Server实战指南。文章从启用并安全配置SSH服务入手,深入解析了用户权限体系设计、SSH连接与仓库初始化、客户端SSH密钥配置等核心步骤,并提供了常见错误排查与生产环境加固方案,帮助开发者成功构建私有、安全的代码托管平台。

rock5的博客 420

硬件工程师笔记——电子器件汇总大全

本文系统总结了14种常用电子器件的工作原理及功能应用,包括电阻、压敏电阻、电容、电感、二极管、三极管、MOS管、晶振、光耦、IGBT、继电器、磁珠、可控硅和线性稳压器。每种器件从结构原理、工作特性到典型应用进行全面解析,如电阻的限流分压、电容的储能滤波、三极管的放大开关等。重点阐述了各器件在电路设计中的关键作用,如IGBT的功率控制、继电器的隔离保护、LDO的电压稳定等,并提供了实际电路应用案例。文章还整理了硬件工程师笔试面试相关的知识点和真题资源,为电子工程师提供全面的技术参考。

XU157303764的博客 2万+

基于Docker的Minio集群部署

基于Docker的Minio集群部署

wu624218376的博客 6486

深入解析:AndroidManifest.xml 与 Qt 6.7.0 的整合

本文探讨了在Qt 6.7.0和CMake构建Android应用时,AndroidManifest.xml未被正确识别的问题。通过分析CMake配置错误、文件路径问题等可能原因,提出了在CMakeLists.txt中明确指定路径、确保目录结构正确等解决方案,并给出了示例项目演示。文章强调正确配置AndroidManifest.xml对获取权限和应用功能的重要性,为Qt开发者提供了实用的调试建议。

2501_90323865的博客 111

Docker部署Minio

MINIO_ROOT_PASSWORD=minioadmin,这个参数是指定登录时的密码为minioadmin,MINIO_ROOT_USER=minioadmin,这个参数是指定登录时的用户名为minioadmin,访问: https://ip:9001。访问: http://ip:9001。可以选择在任何位置创建此目录。

feritylamb的博客 2270

重复点击提交、产生多笔数据、保持数据只操作一次---->接口幂等性校验

幂等校验一、工作真实场景 + 常出现场景二、工作解决方案 + 百度解决方案 一、工作真实场景 + 常出现场景 真实场景:在一次工作中进行成品出库创建成品出库单时,手抖了一下,重复点击了两次确定(提交表单)。结果很神奇的发现居然产生了两笔一模一样的数据(流水号都一样),当时就很懵逼,稍作思考,想想应该是在同一时刻创建了两个出库单。感觉很有意思(因为之前没有遇到过,写代码的时候也没有考虑到这个问题的发生),后面换了一种方式复现场景:提交表单时多次点击Enter按钮,还是会产生多笔重复数据。 常见场景: 订单接

私聊前往站内信:https://i.youkuaiyun.com/#/msg/chat/weixin_44976692 6万+

YOLO26涨点改进 | NeurIPS2025最佳论文!注意力改进篇| 引入Gated Attention门控注意力模块、太牛了!直接拯救了大模型的发展,助力目标检测、图像分割、图像分类有效涨点

本文提出了一种基于门控注意力机制(GatedAttention)的YOLO26模型改进方法。该方法在标准softmax注意力机制中引入头部特定的sigmoid门控,通过增强注意力机制使模型更聚焦于关键信息。实验表明,该模块能显著提升模型性能,特别是在复杂背景和密集目标场景中,同时减少无关区域关注并提高检测精度。门控机制引入的非线性和稀疏性不仅提升了推理效率,还改善了训练稳定性,使模型能采用更大学习率并增强扩展性。此外,该方法有效缓解了"注意力下沉"现象,增强了模型对长距离目标的感知能力。

Ai缝合怪、助力小伙伴高效发论文 658

docker部署minio集群

docker部署minio集群

zhoumiaomiao520的博客 1583

《低功耗方法学》翻译——前言

前言

记录所学,分享知识,结识挚友 1209

第13章 Docker应用实战-Docker部署MinIO

本节介绍如何在docker中快速搭建MinIO环境,包含部署单节点MinIO、MinIO纠删码集群、MinIO分布式集群。以上环境部署都是在CentOS7操作系统下进行,如果您使用的是Windows操作系统,尚未具备CentOS环境,可以选择在Windows中安装虚拟机Vmware,然后在Vmware中安装CentOS操作系统,具体步骤请查看我的另一篇教程《第1章 Docker应用实战-基础环境准备》进行安装。

王珂的专栏 1196

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

docker compose 部署 minio

1、下载Minio镜像docker hub地址 # 将官方镜像拉到本地 docker pull minio/minio # 将minio 上传到自己的私有仓库 docker tag docker-reg.xxxxx.com/library/minio:lastest minio/minio docker push docker-reg.xxxxx.com/library/minio:las...

muruibin88的博客 3290

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Docker部署minio

http://127.0.0.1:9000/test22/ 中的 /test22/ 为桶名字,根据自己的替换。访问地址:http://127.0.0.1:9000/file-preview/test3.png。创建docker-compose文件,放在/data/minio/ 目录下。创建相应的目录和配置文件。windows环境下载。

程序员学编程 的专栏 995

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Docker 部署Minio

Docker 部署Minio MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几kb到最大5T不等。 MinIO是一个非常轻量的服务,可以很简单的和其他应用的结合,类似 NodeJS, Redis 或者 MySQL。 官网地址 https://docs.min.io/cn/ 拉取镜像 docker pull minio

jeikerxiao 2877

docker、docker-compose、Https部署Minio,去除Minio文件过期时间教程

版本再高一些的上传文件后服务器保存的不是xxx.png格式的图片,而是一个以图片名命名的目录,里面是一些看不懂的文件。IP部分会自动用当前服务器的IP,当调用Minio获取文件url接口时返回。服务的证书,因为官方规定了证书文件名字,所以两个证书文件需要重命名为。配置Minio后台登陆账号,默认minioadmin。配置Minio后台登陆密码,默认minioadmin。是Minio默认存放证书的目录,我这里挂载到宿主机。配置Minio API域名,格式为。,则Minio管理后台地址为。

qq_38066647的博客 2281

关于minio部署(docker)以及minio上传文件

minio是开源文件存储系统,可以用来存储和检索大量的文件。它是一个轻量级的分布式存储服务。

m0_60406097的博客 2166
上一篇: Docker 部署 PHP 全手册
下一篇: Nacos Server 镜像 Docker 部署完整教程
java_logo
博客等级 码龄18年 326粉丝 240原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值