From 3ce21734b80898773ec3196262109c2acdedc636 Mon Sep 17 00:00:00 2001 From: Joseph Doherty Date: Wed, 8 Jul 2026 16:40:17 -0400 Subject: [PATCH] fix(docker): 30s stop_grace_period so graceful redeploys aren't SIGKILLed mid-CoordinatedShutdown --- docker-env2/docker-compose.yml | 16 ++++++++++++++++ docker/docker-compose.yml | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+) diff --git a/docker-env2/docker-compose.yml b/docker-env2/docker-compose.yml index a7c47637..482ebd6e 100644 --- a/docker-env2/docker-compose.yml +++ b/docker-env2/docker-compose.yml @@ -1,6 +1,10 @@ services: central-a: image: scadabridge:latest + # CoordinatedShutdown needs cluster-leave (15s budget) + cluster-exiting + + # actor-system-terminate + Serilog flush; the 10s SIGTERM default SIGKILLed + # mid-drain, turning every redeploy into the crash path (review 01 [Medium]). + stop_grace_period: 30s container_name: scadabridge-env2-central-a environment: SCADABRIDGE_CONFIG: Central @@ -24,6 +28,10 @@ services: central-b: image: scadabridge:latest + # CoordinatedShutdown needs cluster-leave (15s budget) + cluster-exiting + + # actor-system-terminate + Serilog flush; the 10s SIGTERM default SIGKILLed + # mid-drain, turning every redeploy into the crash path (review 01 [Medium]). + stop_grace_period: 30s container_name: scadabridge-env2-central-b environment: SCADABRIDGE_CONFIG: Central @@ -47,6 +55,10 @@ services: site-x-a: image: scadabridge:latest + # CoordinatedShutdown needs cluster-leave (15s budget) + cluster-exiting + + # actor-system-terminate + Serilog flush; the 10s SIGTERM default SIGKILLed + # mid-drain, turning every redeploy into the crash path (review 01 [Medium]). + stop_grace_period: 30s container_name: scadabridge-env2-site-x-a environment: SCADABRIDGE_CONFIG: Site @@ -63,6 +75,10 @@ services: site-x-b: image: scadabridge:latest + # CoordinatedShutdown needs cluster-leave (15s budget) + cluster-exiting + + # actor-system-terminate + Serilog flush; the 10s SIGTERM default SIGKILLed + # mid-drain, turning every redeploy into the crash path (review 01 [Medium]). + stop_grace_period: 30s container_name: scadabridge-env2-site-x-b environment: SCADABRIDGE_CONFIG: Site diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml index 7e99afbe..7d3024be 100644 --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml @@ -1,6 +1,10 @@ services: central-a: image: scadabridge:latest + # CoordinatedShutdown needs cluster-leave (15s budget) + cluster-exiting + + # actor-system-terminate + Serilog flush; the 10s SIGTERM default SIGKILLed + # mid-drain, turning every redeploy into the crash path (review 01 [Medium]). + stop_grace_period: 30s container_name: scadabridge-central-a environment: SCADABRIDGE_CONFIG: Central @@ -24,6 +28,10 @@ services: central-b: image: scadabridge:latest + # CoordinatedShutdown needs cluster-leave (15s budget) + cluster-exiting + + # actor-system-terminate + Serilog flush; the 10s SIGTERM default SIGKILLed + # mid-drain, turning every redeploy into the crash path (review 01 [Medium]). + stop_grace_period: 30s container_name: scadabridge-central-b environment: SCADABRIDGE_CONFIG: Central @@ -47,6 +55,10 @@ services: site-a-a: image: scadabridge:latest + # CoordinatedShutdown needs cluster-leave (15s budget) + cluster-exiting + + # actor-system-terminate + Serilog flush; the 10s SIGTERM default SIGKILLed + # mid-drain, turning every redeploy into the crash path (review 01 [Medium]). + stop_grace_period: 30s container_name: scadabridge-site-a-a environment: SCADABRIDGE_CONFIG: Site @@ -63,6 +75,10 @@ services: site-a-b: image: scadabridge:latest + # CoordinatedShutdown needs cluster-leave (15s budget) + cluster-exiting + + # actor-system-terminate + Serilog flush; the 10s SIGTERM default SIGKILLed + # mid-drain, turning every redeploy into the crash path (review 01 [Medium]). + stop_grace_period: 30s container_name: scadabridge-site-a-b environment: SCADABRIDGE_CONFIG: Site @@ -79,6 +95,10 @@ services: site-b-a: image: scadabridge:latest + # CoordinatedShutdown needs cluster-leave (15s budget) + cluster-exiting + + # actor-system-terminate + Serilog flush; the 10s SIGTERM default SIGKILLed + # mid-drain, turning every redeploy into the crash path (review 01 [Medium]). + stop_grace_period: 30s container_name: scadabridge-site-b-a environment: SCADABRIDGE_CONFIG: Site @@ -95,6 +115,10 @@ services: site-b-b: image: scadabridge:latest + # CoordinatedShutdown needs cluster-leave (15s budget) + cluster-exiting + + # actor-system-terminate + Serilog flush; the 10s SIGTERM default SIGKILLed + # mid-drain, turning every redeploy into the crash path (review 01 [Medium]). + stop_grace_period: 30s container_name: scadabridge-site-b-b environment: SCADABRIDGE_CONFIG: Site @@ -111,6 +135,10 @@ services: site-c-a: image: scadabridge:latest + # CoordinatedShutdown needs cluster-leave (15s budget) + cluster-exiting + + # actor-system-terminate + Serilog flush; the 10s SIGTERM default SIGKILLed + # mid-drain, turning every redeploy into the crash path (review 01 [Medium]). + stop_grace_period: 30s container_name: scadabridge-site-c-a environment: SCADABRIDGE_CONFIG: Site @@ -127,6 +155,10 @@ services: site-c-b: image: scadabridge:latest + # CoordinatedShutdown needs cluster-leave (15s budget) + cluster-exiting + + # actor-system-terminate + Serilog flush; the 10s SIGTERM default SIGKILLed + # mid-drain, turning every redeploy into the crash path (review 01 [Medium]). + stop_grace_period: 30s container_name: scadabridge-site-c-b environment: SCADABRIDGE_CONFIG: Site