Loading...

文章背景图

MinIO:S3 兼容高性能对象存储部署与 mc 客户端使用指南

2026-10-27
0
- 字
- 分钟
|

MinIO:S3 兼容高性能对象存储部署与 mc 客户端使用指南

一、项目官方信息

项目 信息
GitHub 仓库 https://github.com/minio/minio
官网 https://min.io
文档 https://docs.min.io
开源协议 AGPL-3.0
主要语言 Go(约 99%)
Star 数 约 61k

现状说明:本仓库 README 顶部明确标注 THIS REPOSITORY IS NO LONGER MAINTAINED。MinIO 社区版现在仅以源码形式分发,不再提供预编译二进制;官方转向 AIStor 商业版(AIStor Free 社区免费版 / AIStor Enterprise 企业版)。本文按其 README 记录源码安装与 Docker 部署方法。

MinIO 是高性能、S3 兼容的对象存储,AGPLv3 发布,面向 AI/ML、分析与数据密集型工作负载。

  • S3 API 兼容,可无缝接入现有 S3 工具;
  • 为 AI 与分析设计;
  • 高性能,适合 demanding 存储负载。

MinIO 仓库封面

二、官方图片

上图为 MinIO 仓库在 GitHub 上的社交预览图。

三、环境要求

  • Go 1.24 及以上(源码安装方式);
  • 或 Docker(用于构建镜像/运行);
  • 一块用于存放对象数据的空目录/磁盘;
  • 内存建议 2GB 以上。

四、部署步骤

方式一:从源码安装(推荐)

go install github.com/minio/minio@latest

跨平台编译:

env GOOS=linux GOARCH=arm64 go build

启动独立服务:

minio server /data

其中 /data 是本机任意空目录(存放对象数据)。

方式二:构建 Docker 镜像

先在源码根目录编译出 minio 二进制,再:

docker build -t myminio:minio .

运行:

docker run -p 9000:9000 -p 9001:9001 myminio:minio server /tmp/minio --console-address :9001

验证

MinIO 默认根凭据为 minioadmin:minioadmin。浏览器访问嵌入式 Console:

登录后即可创建 bucket、上传对象、浏览内容。

五、使用方法

1. 安装并配置 mc 客户端

mc alias set local http://localhost:9000 minioadmin minioadmin
mc admin info local

2. 桶与对象操作

mc mb data
mc cp ~/Downloads/mydata data/
mc ls data/

mc 提供类似 UNIX 的 ls/cat/cp/mirror/diff 等命令,同时支持文件系统与 S3 兼容存储。

3. Console 图形管理

浏览器打开 http://127.0.0.1:9001,用 root 凭据登录:

  • 创建 bucket;
  • 上传/下载对象;
  • 配置访问策略(public/private)、生成访问密钥(Access Key/Secret Key);
  • 用 S3 兼容 SDK(minio-go 等)在应用里读写。

4. 生产注意

README 提示:从源码编译的 MinIO 生产使用风险自担;AGPLv3 不提供保修。商用/专有场景需评估 AIStor 商业授权。

六、常见问题 FAQ

  1. 这个仓库还维护吗? README 明确不再维护;社区版改为仅源码分发,预编译二进制不再更新。新功能见 AIStor。

  2. 默认账号密码是什么? minioadmin:minioadmin,生产环境务必通过环境变量 MINIO_ROOT_USER/MINIO_ROOT_PASSWORD 改掉。

  3. API 和 Console 端口分别是? API 是 9000;Console 用 --console-address :9001 指定,否则随机。

  4. 怎么用 mc 连本地? mc alias set local http://localhost:9000 minioadmin minioadmin,之后 mc ls local/...。

  5. AGPL 协议有什么约束? 任何对 AGPL 代码的使用需遵守其开源义务,商用/转售需自行评估风险或购买商业授权。

  6. 能用在 Kubernetes 吗? 可以,用 MinIO Operator 或社区 Helm chart 部署。

七、跳转链接

评论交流

文章目录