MinIO 容器化快速部署指南
一、快速开始
# 创建网络(需提前执行)
docker network create srebro
#创建工作目录
mkdir -p /home/application/Middleware/minio/
# 启动服务
docker-compose up -d
二、配置说明
docker-compose.yaml 结构
services:
minio:
image: minio/minio
container_name: minio
networks:
- srebro
ports:
- 9000:9000
- 9001:9001
volumes:
- /home/application/Middleware/minio/data:/data
- /etc/localtime:/etc/localtime
environment:
MINIO_ROOT_USER: srebro
MINIO_ROOT_PASSWORD: 'srebro@2025'
TZ: Asia/Shanghai
command: server /data --console-address :9001
healthcheck: # 健康检查确保初始化服务在MinIO就绪后运行
test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
interval: 10s
timeout: 5s
retries: 10
restart: unless-stopped
minio-init:
image: minio/mc # 使用官方mc工具镜像
depends_on:
minio:
condition: service_healthy # 依赖MinIO健康状态
networks:
- srebro
entrypoint: >
/bin/sh -c "
/usr/bin/mc alias set srebro-minio http://minio:9000 srebro 'srebro@2025';
/usr/bin/mc mb srebro-minio/srebro --ignore-existing;
exit 0;
"
networks:
srebro:
external: true
三、服务说明
-
主服务 (minio)
- 版本控制:使用特定版本镜像(建议根据实际情况更新)
- 端口映射:
- 9000:MinIO服务API端口
- 9001:Web控制台端口
- 数据持久化:映射宿主机目录到容器内
/data
- 健康检查:通过HTTP接口验证服务状态
-
初始化服务 (minio-init)
- 自动执行初始化命令:
- 配置MinIO客户端别名
- 创建默认存储桶(已存在时自动跳过)
- 自动执行初始化命令:
四、使用验证
- 访问Web控制台:
http://<服务器IP>:9001
- 使用配置的账号密码登录:
Username: srebro Password: srebro@2025