elasticio/minioMinIO 是一款开源的高性能对象存储服务器,兼容 Amazon S3 API 规范,专为企业级数据存储设计。它支持分布式部署架构,可灵活扩展存储容量与性能,广泛应用于私有云存储、大数据分析平台、容器化环境存储等场景,提供可靠、高效的对象存储服务。
bashdocker run -d \ -p 9000:9000 \ -p 9001:9001 \ --name minio \ -v /host/path/data:/data \ -e "MINIO_ROOT_USER=AdminAccessKey" \ -e "MINIO_ROOT_PASSWORD=AdminSecretKey" \ minio/minio server /data --console-address ":9001"
参数说明:
-p 9000:9000:映射 S3 API 服务端口-p 9001:9001:映射 Web 管理控制台端口-v /host/path/data:/data:挂载主机目录作为数据存储卷(替换/host/path/data为实际路径)MINIO_ROOT_USER/MINIO_ROOT_PASSWORD:管理员访问凭证(生产环境需使用强密码)--console-address ":9001":指定控制台监听端口yamlversion: '3.8' services: minio: image: minio/minio container_name: minio-server restart: always ports: - "9000:9000" # S3 API 端口 - "9001:9001" # Web 控制台端口 volumes: - minio_data:/data environment: MINIO_ROOT_USER: "AKIAEXAMPLE" MINIO_ROOT_PASSWORD: "StrongPassword123" MINIO_REGION: "cn-north-1" MINIO_BROWSER: "on" command: server /data --console-address ":9001" volumes: minio_data: # Docker 命名卷,用于持久化存储
启动服务:
bashdocker-compose up -d
| 环境变量 | 描述 | 默认值 |
|---|---|---|
MINIO_ROOT_USER | 管理员访问密钥 | - |
MINIO_ROOT_PASSWORD | 管理员密钥 | - |
MINIO_REGION | 默认存储区域 | us-east-1 |
MINIO_BROWSER | 是否启用 Web 控制台(on/off) | on |
MINIO_SERVER_URL | 自定义 S3 API 访问地址 | 自动生成(基于访问IP) |
MINIO_CONSOLE_URL | 自定义控制台访问地址 | 自动生成(基于访问IP) |
MINIO_DISK_CACHE_SIZE | 磁盘缓存大小(如 10GB) | 0(禁用缓存) |
为防止容器重启导致数据丢失,需通过以下方式持久化存储:
-v /host/path/data:/data),需确保目录权限正确(建议设置 chmod 777 /host/path/data)以下是 4 节点分布式部署的 docker-compose 配置(需在 4 台主机分别部署):
yamlversion: '3.8' services: minio: image: minio/minio container_name: minio restart: always ports: - "9000:9000" - "9001:9001" volumes: - /data/minio:/data environment: MINIO_ROOT_USER: "AKIAEXAMPLE" MINIO_ROOT_PASSWORD: "StrongPassword123" command: server [***] [***] [***] [***] --console-address ":9001"
注意:需将
node1-node4替换为实际节点 IP/主机名,所有节点间需保证网络互通,建议使用静态 IP 配置
Web 控制台访问
浏览器访问 http://<服务器IP>:9001,使用配置的 MINIO_ROOT_USER 和 MINIO_ROOT_PASSWORD 登录,可进行存储桶管理、用户配置、权限设置等操作。
S3 客户端访问
使用 MinIO Client (mc) 工具连接服务:
bash# 安装 mc 客户端 curl [***] -o /usr/local/bin/mc chmod +x /usr/local/bin/mc # 配置 MinIO 服务端 mc alias set myminio http://localhost:9000 AKIAEXAMPLE StrongPassword123 # 基本操作示例 mc mb myminio/mybucket # 创建存储桶 mc cp localfile.txt myminio/mybucket/ # 上传文件 mc ls myminio/mybucket # 列出存储桶内容
mc mirror 命令定期备份数据,或配置跨区域复制规则实现数据容灾manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务