minio服务集群搭建

1.创建文件

js 复制代码
mkdir -p data/{minio1,minio2,minio3,minio4}
touch docker-compose.yml
touch minio.conf

2.docker-compose.yml

js 复制代码
version: "3.8"

services:
  minio1:
    image: registry.cn-hangzhou.aliyuncs.com/snow-io/minio:RELEASE.2023-01-02T09-40-09Z
    container_name: minio1
    restart: always
    command: server http://minio{1...4}/data --console-address ":9001"
    environment:
      MINIO_ROOT_USER: admin
      MINIO_ROOT_PASSWORD: hjm029796
    volumes:
      - ./data/minio1:/data
    networks:
      - minio_net

  minio2:
    image: registry.cn-hangzhou.aliyuncs.com/snow-io/minio:RELEASE.2023-01-02T09-40-09Z
    container_name: minio2
    restart: always
    command: server http://minio{1...4}/data --console-address ":9001"
    environment:
      MINIO_ROOT_USER: admin
      MINIO_ROOT_PASSWORD: hjm029796
    volumes:
      - ./data/minio2:/data
    networks:
      - minio_net

  minio3:
    image: registry.cn-hangzhou.aliyuncs.com/snow-io/minio:RELEASE.2023-01-02T09-40-09Z
    container_name: minio3
    restart: always
    command: server http://minio{1...4}/data --console-address ":9001"
    environment:
      MINIO_ROOT_USER: admin
      MINIO_ROOT_PASSWORD: hjm029796
    volumes:
      - ./data/minio3:/data
    networks:
      - minio_net

  minio4:
    image: registry.cn-hangzhou.aliyuncs.com/snow-io/minio:RELEASE.2023-01-02T09-40-09Z
    container_name: minio4
    restart: always
    command: server http://minio{1...4}/data --console-address ":9001"
    environment:
      MINIO_ROOT_USER: admin
      MINIO_ROOT_PASSWORD: hjm029796
    volumes:
      - ./data/minio4:/data
    networks:
      - minio_net

  nginx:
    image: registry.cn-hangzhou.aliyuncs.com/snow-io/nginx:1.22
    container_name: nginx_minio
    restart: always
    ports:
      - "9200:9200"      # MinIO API
      - "9201:9201"      # MinIO 控制台
    volumes:
      - ./minio.conf:/etc/nginx/conf.d/minio.conf
    depends_on:
      - minio1
      - minio2
      - minio3
      - minio4
    networks:
      - minio_net

networks:
  minio_net:
    driver: bridge

3.minio.conf

js 复制代码
upstream minio_api {
    server minio1:9000;
    server minio2:9000;
    server minio3:9000;
    server minio4:9000;
}

upstream minio_console {
    server minio1:9001;
    server minio2:9001;
    server minio3:9001;
    server minio4:9001;
}

server {
    listen 9200;
    server_name _;

    # MinIO API 反向代理
    location / {
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        proxy_pass http://minio_api;
    }
}

server {
    listen 9201;
    server_name _;

    # MinIO 控制台反向代理
    location / {
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        proxy_pass http://minio_console;
    }
}

4.启动

js 复制代码
docker compose down && docker compose up -d
相关推荐
道友可好2 小时前
写给 AI 的入职手册,AGENTS.md
前端·人工智能·后端
sandnes2 小时前
把ToolUse循环做到生产级-错误处理与可靠性五件套
后端
掘金者阿豪2 小时前
全维度拆解具身智能:底层技术 + 实战落地 + 全球产业竞争
后端
秋天的一阵风2 小时前
✨ 代码秒跳转、自动补全?全靠 LSP 和 AST!
前端·后端·ai编程
用户298698530142 小时前
Java 中的 HTML 解析:从文件读取、URL 抓取到数据提取
java·后端
AskHarries2 小时前
ZJF.AI:简单、稳定、免费的图片托管与外链分享平台
后端
百珏2 小时前
流量没暴涨,网关却挂了:Spring Cloud Gateway 从 500 QPS 优化到 4200 QPS
后端·spring cloud·架构
ICT系统集成阿祥2 小时前
什么是AI ECN?
后端
XovH2 小时前
Redis 从入门到精通:数据结构Hash 与 List
后端
Cache技术分享2 小时前
432. Java 日期时间 API - 时间工具 TemporalQuery 详解
前端·后端