mirror of
https://github.com/bulwarkmail/webmail.git
synced 2026-11-02 16:15:39 +00:00
16 lines
752 B
JavaScript
16 lines
752 B
JavaScript
// Docker HEALTHCHECK: exit 0 when /api/health/live answers 200 within 4 s.
|
|
// Liveness only, so a Stalwart outage never marks the container unhealthy.
|
|
// The base path is baked in at build time (BULWARK_BASE_PATH in the image).
|
|
// https://bulwarkmail.org/docs/deployment/monitoring#health
|
|
const port = process.env.PORT || '3000';
|
|
const listen = process.env.HOSTNAME;
|
|
const host = !listen || listen === '0.0.0.0' || listen === '::' ? '127.0.0.1' : listen.includes(':') ? `[${listen}]` : listen;
|
|
const base = (process.env.BULWARK_BASE_PATH || '').replace(/\/+$/, '');
|
|
|
|
try {
|
|
const res = await fetch(`http://${host}:${port}${base}/api/health/live`, { signal: AbortSignal.timeout(4000) });
|
|
process.exit(res.ok ? 0 : 1);
|
|
} catch {
|
|
process.exit(1);
|
|
}
|