storj.io/minio@v0.0.0-20230509071714-0cbc90f649b1/docs/orchestration/docker-compose/docker-compose.yaml (about)

     1  version: '3.7'
     2  
     3  # starts 4 docker containers running minio server instances.
     4  # using nginx reverse proxy, load balancing, you can access
     5  # it through port 9000.
     6  services:
     7    minio1:
     8      image: minio/minio:RELEASE.2021-04-22T15-44-28Z
     9      volumes:
    10        - data1-1:/data1
    11        - data1-2:/data2
    12      expose:
    13        - "9000"
    14      environment:
    15        MINIO_ROOT_USER: minio
    16        MINIO_ROOT_PASSWORD: minio123
    17      command: server http://minio{1...4}/data{1...2}
    18      healthcheck:
    19        test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
    20        interval: 30s
    21        timeout: 20s
    22        retries: 3
    23  
    24    minio2:
    25      image: minio/minio:RELEASE.2021-04-22T15-44-28Z
    26      volumes:
    27        - data2-1:/data1
    28        - data2-2:/data2
    29      expose:
    30        - "9000"
    31      environment:
    32        MINIO_ROOT_USER: minio
    33        MINIO_ROOT_PASSWORD: minio123
    34      command: server http://minio{1...4}/data{1...2}
    35      healthcheck:
    36        test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
    37        interval: 30s
    38        timeout: 20s
    39        retries: 3
    40  
    41    minio3:
    42      image: minio/minio:RELEASE.2021-04-22T15-44-28Z
    43      volumes:
    44        - data3-1:/data1
    45        - data3-2:/data2
    46      expose:
    47        - "9000"
    48      environment:
    49        MINIO_ROOT_USER: minio
    50        MINIO_ROOT_PASSWORD: minio123
    51      command: server http://minio{1...4}/data{1...2}
    52      healthcheck:
    53        test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
    54        interval: 30s
    55        timeout: 20s
    56        retries: 3
    57  
    58    minio4:
    59      image: minio/minio:RELEASE.2021-04-22T15-44-28Z
    60      volumes:
    61        - data4-1:/data1
    62        - data4-2:/data2
    63      expose:
    64        - "9000"
    65      environment:
    66        MINIO_ROOT_USER: minio
    67        MINIO_ROOT_PASSWORD: minio123
    68      command: server http://minio{1...4}/data{1...2}
    69      healthcheck:
    70        test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
    71        interval: 30s
    72        timeout: 20s
    73        retries: 3
    74  
    75    nginx:
    76      image: nginx:1.19.2-alpine
    77      volumes:
    78        - ./nginx.conf:/etc/nginx/nginx.conf:ro
    79      ports:
    80        - "9000:9000"
    81      depends_on:
    82        - minio1
    83        - minio2
    84        - minio3
    85        - minio4
    86  
    87  ## By default this config uses default local driver,
    88  ## For custom volumes replace with volume driver configuration.
    89  volumes:
    90    data1-1:
    91    data1-2:
    92    data2-1:
    93    data2-2:
    94    data3-1:
    95    data3-2:
    96    data4-1:
    97    data4-2:
    98