Remove healthcheck script for Docker image (#8095)

There are multiple possibilities for running MinIO within
a container e.g. configurable address, non-root user etc.
This makes it difficult to identify actual IP / Port to
use to check healthcheck status from within a container.

It is simpler to use external healthcheck mechanisms
like healthcheck command in docker-compose to check
for MinIO health status. This is similar to how checks
work in Kubernetes as well.

This PR removes the healthcheck script used inside
Docker container and ad documentation on how to
use docker-compose based healthcheck mechanism.
This commit is contained in:
Nitish Tiwari
2019-08-18 01:14:04 +05:30
committed by Harshavardhana
parent a15bb19d37
commit e5fb6294a7
9 changed files with 122 additions and 242 deletions

View File

@@ -1,49 +1,76 @@
version: '2'
version: '3.7'
# starts 4 docker containers running minio server instances. Each
# minio server's web interface will be accessible on the host at port
# 9001 through 9004.
services:
minio1:
image: minio/minio:RELEASE.2019-08-14T20-37-41Z
volumes:
- data1:/data
ports:
- "9001:9000"
environment:
MINIO_ACCESS_KEY: minio
MINIO_SECRET_KEY: minio123
command: server http://minio1/data http://minio2/data http://minio3/data http://minio4/data
minio2:
image: minio/minio:RELEASE.2019-08-14T20-37-41Z
volumes:
- data2:/data
ports:
- "9002:9000"
environment:
MINIO_ACCESS_KEY: minio
MINIO_SECRET_KEY: minio123
command: server http://minio1/data http://minio2/data http://minio3/data http://minio4/data
minio3:
image: minio/minio:RELEASE.2019-08-14T20-37-41Z
volumes:
- data3:/data
ports:
- "9003:9000"
environment:
MINIO_ACCESS_KEY: minio
MINIO_SECRET_KEY: minio123
command: server http://minio1/data http://minio2/data http://minio3/data http://minio4/data
minio4:
image: minio/minio:RELEASE.2019-08-14T20-37-41Z
volumes:
- data4:/data
ports:
- "9004:9000"
environment:
MINIO_ACCESS_KEY: minio
MINIO_SECRET_KEY: minio123
command: server http://minio1/data http://minio2/data http://minio3/data http://minio4/data
minio1:
image: minio/minio:RELEASE.2019-08-14T20-37-41Z
volumes:
- data1:/data
ports:
- "9001:9000"
environment:
MINIO_ACCESS_KEY: minio
MINIO_SECRET_KEY: minio123
command: server http://minio1/data http://minio2/data http://minio3/data http://minio4/data
healthcheck:
test: ["CMD", "curl", "-f", "http://minio1:9000/minio/health/live"]
interval: 1m30s
timeout: 20s
retries: 3
start_period: 3m
minio2:
image: minio/minio:RELEASE.2019-08-14T20-37-41Z
volumes:
- data2:/data
ports:
- "9002:9000"
environment:
MINIO_ACCESS_KEY: minio
MINIO_SECRET_KEY: minio123
command: server http://minio1/data http://minio2/data http://minio3/data http://minio4/data
healthcheck:
test: ["CMD", "curl", "-f", "http://minio2:9000/minio/health/live"]
interval: 1m30s
timeout: 20s
retries: 3
start_period: 3m
minio3:
image: minio/minio:RELEASE.2019-08-14T20-37-41Z
volumes:
- data3:/data
ports:
- "9003:9000"
environment:
MINIO_ACCESS_KEY: minio
MINIO_SECRET_KEY: minio123
command: server http://minio1/data http://minio2/data http://minio3/data http://minio4/data
healthcheck:
test: ["CMD", "curl", "-f", "http://minio3:9000/minio/health/live"]
interval: 1m30s
timeout: 20s
retries: 3
start_period: 3m
minio4:
image: minio/minio:RELEASE.2019-08-14T20-37-41Z
volumes:
- data4:/data
ports:
- "9004:9000"
environment:
MINIO_ACCESS_KEY: minio
MINIO_SECRET_KEY: minio123
command: server http://minio1/data http://minio2/data http://minio3/data http://minio4/data
healthcheck:
test: ["CMD", "curl", "-f", "http://minio4:9000/minio/health/live"]
interval: 1m30s
timeout: 20s
retries: 3
start_period: 3m
## By default this config uses default local driver,
## For custom volumes replace with volume driver configuration.

View File

@@ -1,4 +1,4 @@
version: '3.1'
version: '3.7'
services:
minio1:
@@ -22,6 +22,12 @@ services:
secrets:
- secret_key
- access_key
healthcheck:
test: ["CMD", "curl", "-f", "http://minio1:9000/minio/health/live"]
interval: 1m30s
timeout: 20s
retries: 3
start_period: 3m
minio2:
image: minio/minio:RELEASE.2019-08-14T20-37-41Z
@@ -44,6 +50,12 @@ services:
secrets:
- secret_key
- access_key
healthcheck:
test: ["CMD", "curl", "-f", "http://minio2:9000/minio/health/live"]
interval: 1m30s
timeout: 20s
retries: 3
start_period: 3m
minio3:
image: minio/minio:RELEASE.2019-08-14T20-37-41Z
@@ -66,6 +78,12 @@ services:
secrets:
- secret_key
- access_key
healthcheck:
test: ["CMD", "curl", "-f", "http://minio3:9000/minio/health/live"]
interval: 1m30s
timeout: 20s
retries: 3
start_period: 3m
minio4:
image: minio/minio:RELEASE.2019-08-14T20-37-41Z
@@ -88,6 +106,12 @@ services:
secrets:
- secret_key
- access_key
healthcheck:
test: ["CMD", "curl", "-f", "http://minio4:9000/minio/health/live"]
interval: 1m30s
timeout: 20s
retries: 3
start_period: 3m
volumes:
minio1-data:

View File

@@ -26,6 +26,12 @@ services:
constraints:
- node.labels.minio1==true
command: server http://minio1/export http://minio2/export http://minio3/export http://minio4/export
healthcheck:
test: ["CMD", "curl", "-f", "http://minio1:9000/minio/health/live"]
interval: 1m30s
timeout: 20s
retries: 3
start_period: 3m
minio2:
image: minio/minio:RELEASE.2019-08-14T20-37-41Z
@@ -52,6 +58,12 @@ services:
constraints:
- node.labels.minio2==true
command: server http://minio1/export http://minio2/export http://minio3/export http://minio4/export
healthcheck:
test: ["CMD", "curl", "-f", "http://minio2:9000/minio/health/live"]
interval: 1m30s
timeout: 20s
retries: 3
start_period: 3m
minio3:
image: minio/minio:RELEASE.2019-08-14T20-37-41Z
@@ -78,6 +90,12 @@ services:
constraints:
- node.labels.minio3==true
command: server http://minio1/export http://minio2/export http://minio3/export http://minio4/export
healthcheck:
test: ["CMD", "curl", "-f", "http://minio3:9000/minio/health/live"]
interval: 1m30s
timeout: 20s
retries: 3
start_period: 3m
minio4:
image: minio/minio:RELEASE.2019-08-14T20-37-41Z
@@ -104,6 +122,12 @@ services:
constraints:
- node.labels.minio4==true
command: server http://minio1/export http://minio2/export http://minio3/export http://minio4/export
healthcheck:
test: ["CMD", "curl", "-f", "http://minio4:9000/minio/health/live"]
interval: 1m30s
timeout: 20s
retries: 3
start_period: 3m
volumes:
minio1-data: