Minio 服务端 Docker 部署 @

Minio 是一个高性能、开源的对象存储解决方案,完全兼容 Amazon S3 API,它专为云原生和容器化环境设计,提供了简单易用的分布式对象存储服务。


1. 快速部署 Minio 服务端 @

使用以下命令通过 Docker 快速部署一个单节点的 Minio 服务:

docker run -d \
  --name minio \
  -p 9000:9000 \
  -p 9001:9001 \
  -v /data/minio:/data \
  -e "MINIO_ROOT_USER=minioadmin" \
  -e "MINIO_ROOT_PASSWORD=minioadmin" \
  quay.io/minio/minio server /data --console-address ":9001"

参数说明:

  • -p 9000:9000:API 服务端口(用于客户端连接)
  • -p 9001:9001:Web 控制台端口
  • -v /data/minio:/data:数据持久化目录映射
  • MINIO_ROOT_USER:管理员用户名(默认:minioadmin)
  • MINIO_ROOT_PASSWORD:管理员密码(默认:minioadmin)

2. 生产环境推荐配置 @

对于生产环境,建议使用分布式部署和更安全的配置:

# 创建数据目录
mkdir -p /data/minio{1..4}

# 分布式部署(4个节点)
docker run -d \
  --name minio \
  -p 9000:9000 \
  -p 9001:9001 \
  -v /data/minio1:/data1 \
  -v /data/minio2:/data2 \
  -v /data/minio3:/data3 \
  -v /data/minio4:/data4 \
  -e "MINIO_ROOT_USER=your_secure_username" \
  -e "MINIO_ROOT_PASSWORD=your_secure_password" \
  quay.io/minio/minio server http://host{1...4}/data{1...4} \
  --console-address ":9001"

3. 验证服务状态 @

部署完成后,可以通过以下方式验证服务是否正常运行:

# 检查容器状态
docker ps | grep minio

# 查看容器日志
docker logs minio

# 测试 API 连通性
curl http://localhost:9000/minio/health/live

4. 访问 Web 控制台 @

在浏览器中访问 http://your-server-ip:9001,使用配置的用户名和密码登录 Minio 管理界面。


Minio 客户端(mc)使用指南 @

Minio 客户端 mc​ 是一个命令行工具,提供了与 Minio 对象存储服务及 Amazon S3 兼容服务交互的强大功能。以下将详细介绍 mc 的安装、配置及常用操作,帮助您快速上手。


1. 安装 Minio 客户端(mc) @

首先,您需要下载并安装 mc 客户端。请按照以下步骤操作:

# 下载 Minio 客户端(mc)的 Linux 64 位版本
wget https://dl.min.io/client/mc/release/linux-amd64/mc

# 赋予执行权限
chmod +x mc

# 将 mc 复制到系统路径,以便全局调用
cp -f mc /usr/bin

说明:以上步骤将 mc​ 安装到 /usr/bin​ 目录,您可以在任何位置直接使用 mc 命令。


2. 配置 Minio 服务端点 @

在使用 mc​ 前,需要配置一个 Minio 服务端点(即一个存储服务地址)。假设您的 Minio 服务运行在本地 127.0.0.1:9000,并拥有访问密钥(Access Key)和密钥(Secret Key),请执行以下命令:

mc config host add ms_minio http://127.0.0.1:9000 minioadmin minioadmin
  • ms_minio:为该服务端点设置的别名,便于后续操作。
  • http://127.0.0.1:9000:Minio 服务的访问地址。
  • minioadmin:Minio 默认的 Access Key 和 Secret Key(请在生产环境中更换为安全凭证)。

提示:您可以使用 mc config host list 查看已配置的服务端点。


3. 创建存储桶(Bucket) @

存储桶类似于文件系统中的文件夹,用于组织和管理对象。以下命令创建一个名为 sentry 的存储桶:

mc mb ms_minio/sentry
  • ms_minio/sentry​:表示在 ms_minio​ 服务中创建 sentry 存储桶。

注意:存储桶名称需全局唯一,并符合命名规范(如仅使用小写字母、数字和连字符)。


4. 上传文件至存储桶 @

使用 mc cp​ 命令可将本地文件上传到指定的存储桶路径。例如,将本地文件 ascm_resource_set_snapshot​ 上传至 sentry 存储桶的根目录:

mc cp ascm_resource_set_snapshot ms_minio/sentry/ascm_resource_set_snapshot
  • ascm_resource_set_snapshot:本地文件名。
  • ms_minio/sentry/ascm_resource_set_snapshot​:目标路径,格式为 服务别名/存储桶/对象键

扩展功能

  • 使用 mc cp --recursive 可上传整个目录。
  • 使用 mc mirror 可同步本地目录与存储桶内容。

总结 @

通过以上步骤,您已经完成了 Minio 客户端的基本安装、配置及文件上传操作。mc​ 还支持更多高级功能,如文件管理、权限设置、事件通知等。如需进一步了解,可运行 mc --help​ 或查阅 Minio 官方文档