fix(docker): align health probe port parsing and document health status

This commit is contained in:
Sameh Khamis committed 2026-10-25 17:32:15 -07:00
1 parent e03e58135d
commit 3a28dcab07
3 files changed
+12 -1

No files matched your search

+1 -1
View File
@@ -43,7 +43,7 @@ EXPOSE 4173
# always on the Host allowlist, and the generous start period covers Vite's
# first-run dependency optimisation.
HEALTHCHECK --interval=30s --timeout=10s --start-period=30s --retries=3 \
CMD ["node", "-e", "fetch('http://127.0.0.1:'+(process.env.PORT||4173)+'/').then((r)=>process.exit(r.ok?0:1),()=>process.exit(1))"]
CMD ["node", "-e", "fetch('http://127.0.0.1:'+(Number.parseInt(process.env.PORT,10)||4173)+'/').then((r)=>process.exit(r.ok?0:1),()=>process.exit(1))"]
# The launcher is `npm run dev` plus one step: it trusts the container's
# gateway address for Provider Settings, because that is where Docker delivers
# the host's own browser from (never 127.0.0.1). See scripts/docker-start.mjs.
+2
View File
@@ -0,0 +1,2 @@
- Report Docker container health with a local HTTP check using Node, with the
same port parsing as the launcher (John Rogers, @14traits, #1394).
+9
View File
@@ -6228,3 +6228,12 @@ when their footprints touch or contain one another, never across a seam toleranc
- `scripts/qa-form-fields.mjs` exercises native selections, number validity,
calibration commit/cancel and stale-camera/disposal guards against an installed
controller with fixture ports, plus default/Cyber and narrow translated layouts.
## Docker health reporting
The Docker image probes its local HTTP root with Node every 30 seconds, using
the launcher's parsed `PORT` (default 4173). A successful HTTP response marks
the container healthy. Checks time out after 10 seconds, with a 30-second
startup grace period and three consecutive failures before reporting unhealthy.
This reports app HTTP availability, not individual provider health, and does not
configure automatic restarts.