Jump to content

Linux/Docker/Healthcheck

From Wiki
Revision as of 09:55, 19 June 2025 by Marcluer (talk | contribs)

docker-compose.yml

service:
  web:
    image: ...  
    ...
    healthcheck:
      test:            ["CMD", "curl", "-f", "http://localhost"]
      test:            ["CMD-SHELL", "curl -f 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