Linux/Docker/Healthcheck
Appearance
docker-compose.yml
service:
web:
image: ...
...
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost"]
["CMD-SHELL", "curl -f http://localhost || exit 1"]
["CMD", "wget", "-qO-", "http://localhost:4195/ready"]
wget --no-verbose --tries=1 --spider http://localhost || exit 1
interval: (default: 30s)
timeout: (default: 30s)
retries: (default: 3) # number of consecutive failures before unhealthy
start_period: (default: 0s) # grace period after start, failures will not count towards consecutive failures
start_interval: (default: 5s) # time between checks, during start-period
depends_on:
database:
condition: (service_started, service_healthy)
restart: true
Exit codes
- 0: success
- 1: failure / unhealthy