# Settings and configurations that are common for all containers
# minio节点之间默认使⽤9000来连通,所以容器把9000暴露出来,9001是console端⼝,每个节点设置两块磁盘x-minio-common: &minio-common
x-minio-common: &minio-common
image: minio/minio:latest
command: server --console-address ":9001" http://minio{1...2}/data{1...2}
expose:
- "9000"
- "9001"
# 增加host映射,以便三个节点之间通过域名连通
extra_hosts:
minio1: 192.169.0.1
minio2: 192.169.0.2
environment:
MINIO_ROOT_USER: minio
MINIO_ROOT_PASSWORD: minio123
healthcheck:
test: [ "CMD", "curl", "-f", "http://localhost:9000/minio/health/live" ]
interval: 30s
timeout: 20s
retries: 5
# starts 4 docker containers running minio server instances. # using nginx reverse proxy, load balancing, you can access # it through port 9000.
# 数据盘挂载⽬录,按需修改
services:
minio1:
<<: *minio-common
container_name: minio1
hostname: minio1
volumes:
- /usr/local/minio/data1:/data1
- /usr/local/minio/data2:/data2
ports:
- "9000:9000"
- "9001:9001"
minio2:
<<: *minio-common
container_name: minio2
hostname: minio2
volumes:
- ./minio_data/data1-1:/data1
- ./minio_data/data1-2:/data2
ports:
- "9000:9000"
- "9001:9001"
docker-compose up -d minio1
docker-compose up -d minio2