healthcheck.sh corria en background sin nadie que lo relanzara si moria. Se agrega un supervisor que lo relanza tras 10s y deja un WARN en health.log. Se cambia `set -eu` por `set -u`: con -e heredado, el propio subshell del supervisor moria en cuanto healthcheck.sh salia con error, antes de llegar a la linea que lo relanzaba. Ya desplegado en la imagen tmux-host:2026-09-26-fix-real (validado en vivo: relanzo tras exit=137 el 2026-09-26 05:04Z). Ver playbook incidente-tmux-host-cadena-fallos-2026-09-25 en docs-portal. Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_018r19s4H8MBGegqToqw5guP
18 lines
559 B
Bash
Executable File
18 lines
559 B
Bash
Executable File
#!/bin/sh
|
|
# Proceso principal (PID 1) del contenedor tmux-host: lanza el chequeo de
|
|
# salud en background y mantiene el contenedor vivo, igual que el
|
|
# `tail -f /dev/null` del `docker run` inline original.
|
|
set -u
|
|
|
|
supervise_healthcheck() {
|
|
while true; do
|
|
/usr/local/bin/healthcheck.sh
|
|
echo "$(date -u +%Y-%m-%dT%H:%M:%SZ) WARN: healthcheck.sh salio inesperadamente (exit=$?) -- relanzando en 10s" \
|
|
>> /DATA/AppData/k3d-lab-v3/tmux-host/logs/health.log 2>/dev/null || true
|
|
sleep 10
|
|
done
|
|
}
|
|
|
|
supervise_healthcheck &
|
|
exec tail -f /dev/null
|