Docker 最佳实战:Docker 部署单节点 Minio 实战

Docker 最佳实战:Docker 部署单节点 Minio 实战

2024 年云原生运维实战文档 99 篇原创计划 第 027 篇 |Docker 最佳实战「2024」系列 第 015 篇

你好,欢迎来到运维有术

今天分享的内容是 Docker 最佳实战「2024」 系列文档中的 Docker 部署单节点 Minio 实战

本文将详细介绍如何用 Docker 容器及 Docker Compose 部署单节点、单数据卷的 Minio 服务。

实战服务器配置 (架构 1:1 复刻小规模生产环境,配置略有不同)

主机名 IP CPU(核) 内存(GB) 系统盘(GB) 数据盘(GB) 用途
docker-node-1 192.168.9.81 4 16 40 100 Docker 节点 1
docker-node-2 192.168.9.82 4 16 40 100 Docker 节点 2
docker-node-3 192.168.9.83 4 16 40 100 Docker 节点 3
合计 3 12 48 120 300

实战环境涉及软件版本信息

  • 操作系统:openEuler 22.03 LTS SP3
  • Docker:24.0.7
  • Minio:RELEASE.2024-06-06T09-36-42Z

1. 前置条件

使用 Docker 部署 Minio 服务的镜像有以下几种选择:

  • bitnami/minio (下载量 10M+)
  • minio/minio (下载量 1B+)

本文选择下载量最大的 Minio 官方提供的镜像,构建单节点 Minio 服务。

2. 安装部署 Minio

2.1 创建数据目录并设置权限

bash 复制代码
cd /data/containers
mkdir -p minio/data

2.2 创建 docker-compose.yml 文件

创建配置文件,vi minio/docker-compose.yml

yaml 复制代码
name: 'minio'
services:
  minio:
    container_name: minio
    image: minio/minio:RELEASE.2024-06-06T09-36-42Z
    restart: always
    environment:
      - TZ=Asia/Shanghai
      - MINIO_ROOT_USER=minioadmin
      - MINIO_ROOT_PASSWORD=OpsXlab@2024
    networks:
      - app-tier
    ports:
      - "9000:9000"
      - "9001:9001"
    volumes:
      - ./data:/data
    command: minio server /data --console-address ":9001"
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
      interval: 30s
      timeout: 20s
      retries: 3
networks:
  app-tier:
    name: app-tier
    driver: bridge
    #external: true

2.3 创建并启动服务

  • 启动服务
bash 复制代码
cd /data/containers/minio
docker compose up -d

2.4 验证容器状态

  • 查看 Minio 容器状态
bash 复制代码
$ docker compose ps
NAME      IMAGE                                      COMMAND                  SERVICE   CREATED          STATUS                    PORTS
minio     minio/minio:RELEASE.2024-06-06T09-36-42Z   "/usr/bin/docker-ent..."   minio     46 seconds ago   Up 43 seconds (healthy)   0.0.0.0:9000-9001->9000-9001/tcp, :::9000-9001->9000-9001/tcp
  • 查看 Minio 服务日志
ruby 复制代码
# 通过日志查看容器是否有异常,结果略
$ docker compose logs -f

3. 验证测试

打开浏览器,输入 **http://服务器IP:9001**,验证 Minio 管理控制台。

Minio 默认的 Metrics 信息。

4. 自动化 Shell 脚本

文章中所有操作步骤,已全部编排为自动化脚本,包含以下内容(因篇幅限制,不在此文档中展示):

  • Shell 脚本部署单节点容器化 Minio
  • Ansible 部署单节点容器化 Minio

运维有术 星球会员请到专属代码仓库下载(价值内容,仅星球会员专享)。

以上,就是我今天分享的全部内容。下一期分享的内容还没想好,敬请期待开盲盒

如果你喜欢本文,请分享、收藏、点赞、评论! 请持续关注 @运维有术,及时收看更多好文!

免责声明:

  • 笔者水平有限,尽管经过多次验证和检查,尽力确保内容的准确性,但仍可能存在疏漏之处。敬请业界专家大佬不吝指教。
  • 本文所述内容仅通过实战环境验证测试,读者可学习、借鉴,但严禁直接用于生产环境由此引发的任何问题,作者概不负责

Get 本文实战视频(请注意,文档视频异步发行,请先关注)

欢迎加入 「知识星球|运维有术」 ,获取更多的 KubeSphere、Kubernetes、云原生运维、自动化运维、AI 大模型等实战技能。未来运维生涯始终有我坐在你的副驾

版权声明

  • 所有内容均属于原创,感谢阅读、收藏,转载请联系授权,未经授权不得转载
相关推荐
极客先躯23 分钟前
高级java每日一道面试题-2026年02月02日-实战篇[Docker]-如何实现容器的持久化存储?
docker·容器·面试宝典·持久化·存储·韵味·java高级面试题
My is 李豆1 小时前
CentOS 7 安装 Docker 完整教程(含 docker-compose 插件)
docker·eureka·centos
极客先躯2 小时前
高级java每日一道面试题-2026年02月01日-实战篇[Docker]-Docker Volume 的生命周期管理是怎样的?
java·运维·docker·容器·持久化·架构图·容器卷
kong@react3 小时前
Rocky Linux 10.2 全面解析:企业级 CentOS 替代方案及保姆级docker安装
java·linux·运维·docker
某林2124 小时前
Isaac Sim 5.1.0 无头服务器部署与 RTX 显存段错误排障全记录
运维·服务器·docker·容器·isaac
m0_738120724 小时前
Docker 环境下 Vulfocus 靶场搭建全流程(附镜像源问题解决方案)
运维·服务器·网络·安全·docker·容器
simeple4 小时前
记一次 Docker Compose 项目迁移:从 Windows Docker Desktop 迁移到 CentOS 服务器
docker
哆啦A梦——5 小时前
Ubuntu 虚拟机 Docker 与 MySQL 8.0.42 部署指南
mysql·ubuntu·docker
Plastic garden5 小时前
K8s知识(3) Pod亲和性,调度
云原生·容器·kubernetes