From c4e5962912beac108e804bd03ae59e66a2277294 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B2=D0=BE=D0=B2=20=D0=90=D1=80=D1=82?= =?UTF-8?q?=D0=B5=D0=BC?= Date: Tue, 21 Apr 2026 00:52:36 +0300 Subject: [PATCH] Update healthcheck configuration in docker-compose.yml for improved reliability - Changed healthcheck command to use 'http' module for better error handling. - Increased timeout to 10s, retries to 8, and start period to 120s to accommodate cold starts. --- docker-compose.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 488f15d..4f18771 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -46,18 +46,19 @@ services: S3_FORCE_PATH_STYLE: ${S3_FORCE_PATH_STYLE:-true} S3_PUBLIC_BASE_URL: ${S3_PUBLIC_BASE_URL:-} S3_OBJECT_PREFIX: ${S3_OBJECT_PREFIX:-toir-light/equipment} + # migrate deploy runs before the HTTP server listens; cold start can exceed 20s. healthcheck: test: [ "CMD", "node", "-e", - "fetch('http://127.0.0.1:3000/health').then(r=>process.exit(r.ok?0:1)).catch(()=>process.exit(1))", + "require('http').get('http://127.0.0.1:3000/health',(r)=>process.exit(r.statusCode===200?0:1)).on('error',()=>process.exit(1))", ] interval: 15s - timeout: 5s - retries: 5 - start_period: 20s + timeout: 10s + retries: 8 + start_period: 120s expose: - "3000" networks: