您的当前位置:首页正文

docker-compose 部署minio集群

来源:华佗健康网

1.技术简介


1.1 Minio


MinIO 是在 GNU Affero 通用公共许可证 v3.0 下发布的高性能对象存储。 它是与 Amazon S3 云存储服务兼容的 API。 使用 MinIO 为机器学习、分析和应用程序数据工作负载构建高性能基础架构。

1.2 docker-compose

2、搭建过程

2.1 编写docker-compose.yml文件

提示:不熟悉docker-compose的可以先百度了解一下

通过docker-compose部署集群的好处是在单台机器上可以快捷的部署集群。如果有多台机器,可以不使用docker-compose,直接在每台机器上单独部署,然后配置集群的环境变了文件。

version: '3.7'
 
services:
  minio1:
    image: minio/minio
    hostname: minio1
    container_name: minio1
    volumes:
      - /home/docker/miniocluster/minio1/data:/data
      - /home/docker/miniocluster/minio1/config:/root/.minio/ # 映射配置目录
    ports:
      - "19001:9000"
      - "18001:8000"
    environment:
      MINIO_ACCESS_KEY: minio
      MINIO_SECRET_KEY: minio123
    command: server http://minio{1...4}/data --console-address ":8000"
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
      interval: 30s
      timeout: 20s
      retries: 3
 
  minio2:
    image: minio/minio
    hostname: minio2
    container_name: minio2
    volumes:
      - /home/docker/miniocluster/minio2/data:/data
      - /home/docker/miniocluster/minio2/config:/root/.minio/ # 映射配置目录
    ports:
      - "19002:9000"
      - "18002:8000"
    environment:
      MINIO_ACCESS_KEY: minio
      MINIO_SECRET_KEY: minio123
    command: server http://minio{1...4}/data --console-address ":8000"
    healthcheck:
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
      interval: 30s
      timeout: 20s
      retries: 3
 
  minio3:
    image: minio/minio
    hostname: minio3
    container_name: minio3
    volumes:
      - /home/docker/miniocluster/minio3/data:/data
      - /home/docker/miniocluster/minio3/config:/root/.minio/ # 映射配置目录
    ports:
      - "19003:9000"
      - "18003:8000"
    environment:
      MINIO_ACCESS_KEY: minio
      MINIO_SECRET_KEY: minio123
    command: server http://minio{1...4}/data --console-address ":8000"
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
      interval: 30s
      timeout: 20s
      retries: 3
 
  minio4:
    image: minio/minio
    hostname: minio4
    container_name: minio4
    volumes:
      - /home/docker/miniocluster/minio4/data:/data
      - /home/docker/miniocluster/minio4/config:/root/.minio/ # 映射配置目录
    ports:
      - "19004:9000"
      - "18004:8000"
    environment:
      MINIO_ACCESS_KEY: minio
      MINIO_SECRET_KEY: minio123
    command: server http://minio{1...4}/data --console-address ":8000"
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
      interval: 30s
      timeout: 20s
      retries: 3


2.2、启动容器

注意:执行docker-compose命令时,需要执行命令的路径中存在docker-compose.yml文件,因此docker-compose.yml在那个路径下面,命令就在那个路径下执行。

docker-compose up -d

2.3、查看启动日志

通过

http://your_hostname:18001/login

http://your_hostname:18002/login

http://your_hostname:18003/login

http://your_hostname:18004/login
分别访问 MinIO 的管理界面。跳出登录页面说明启动成功

3、注意事项

因篇幅问题不能全部显示,请点此查看更多更全内容