docker部署MinIO集群

docker部署MinIO集群

1 拉取镜像

docker pull minio/minio:RELEASE.2023-08-16T20-17-30Z

2 启动集群节点命令

注意:要对配置文件中使用到的文件夹进行授权

version: '3'
# 公共操作
x-minio-common: &minio-common
  image: minio/minio:RELEASE.2023-08-16T20-17-30Z
  command: server --console-address ':19090' -address ":19000" http://minio{1...3}/data{1...2}
  environment:
    TZ: Asia/Shanghai
    MINIO_ROOT_USER: minio
    MINIO_ROOT_PASSWORD: minio123
  healthcheck:
    test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
    interval: 30s
    timeout: 20s
    retries: 3

services:
  minio:
    <<: *minio-commondock
    hostname: minio1
    container_name: minio1
    volumes:
      - /data/minio/minio1/data1:/data1
      - /data/minio/minio1/data2:/data2
      - /data/minio/minio1/config:/root/.minio/
    ports:
      - "19001:19000"
      - "19091:19090"

  minio2:
    <<: *minio-common
    hostname: minio2
    container_name: minio2
    volumes:
      - /data/minio/minio2/data1:/data1
      - /data/minio/minio2/data2:/data2
      - /data/minio/minio2/config:/root/.minio/
    ports:
      - "19002:19000"
      - "19092:19090"

  Minio3:
    <<: *minio-common
    hostname: minio3
    container_name: minio3
    volumes:
      - /data/minio/minio3/data1:/data1
      - /data/minio/minio3/data2:/data2
      - /data/minio/minio3/config:/root/.minio/
    ports:
      - "19003:19000"
      - "19093:19090"

# 简单解释一下

# command: server --console-address ':19090' -address ":19000" http://minio{1...2}/data{1...2}

# 命令中的 http://minio{1...2}/data{1...2} 是集群配置minio{1...2}写法是对应容器minio1和minio2中的网络,这里的19090和19000是对应容器内的端口号,如果这里修改了,那么在下方的port配置中也要修改成对应的映射

3 启动集群

使用命令 docker-compose docker-compose.yml -f up -d 启动集群

使用docker ps查看是否全部启动成功

使用命令 docker logs minio1 查看日志

如图所示即为成功

docker部署MinIO集群_第1张图片

根据配置文件内容可知,minio访问的地址为 ip:19091,ip:19092和ip:19093,API调用的端口为ip:19001,ip:19002以及ip:19003,也可以通过nginx配置负载均衡

你可能感兴趣的:(docker,MinIO,docker,MinIO,MinIO集群)