From fafa34059864fb8985d66243270c1e72609d4762 Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Tue, 11 Jan 2022 20:21:51 +0000 Subject: Catch SIGTERM in containers (for docker stop) Signed-off-by: Laurent Bercot --- src/init/s6-linux-init-maker.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/init/s6-linux-init-maker.c b/src/init/s6-linux-init-maker.c index 6d2a146..209ad2c 100644 --- a/src/init/s6-linux-init-maker.c +++ b/src/init/s6-linux-init-maker.c @@ -563,7 +563,6 @@ static inline void make_image (char const *base) auto_dir(base, "run-image", 0, 0, 0755) ; auto_dir(base, "run-image/" SCANDIR, 0, 0, 0755) ; auto_dir(base, "run-image/" SCANDIR "/.s6-svscan", 0, 0, 0755) ; - auto_script(base, "run-image/" SCANDIR "/.s6-svscan/SIGTERM", &put_shebang_options, 0) ; auto_script(base, "run-image/" SCANDIR "/.s6-svscan/SIGQUIT", &put_shebang_options, 0) ; auto_script(base, "run-image/" SCANDIR "/.s6-svscan/SIGINT", &sig_script, "-r") ; auto_script(base, "run-image/" SCANDIR "/.s6-svscan/SIGUSR1", &sig_script, "-p") ; @@ -589,6 +588,7 @@ static inline void make_image (char const *base) if (inns) { + auto_script(base, "run-image/" SCANDIR "/.s6-svscan/SIGTERM", &sig_script, "-p") ; auto_script(base, "run-image/" SCANDIR "/.s6-svscan/crash", &container_crash_script, 0) ; auto_script(base, "run-image/" SCANDIR "/.s6-svscan/finish", &container_exit_script, 0) ; auto_dir(base, "run-image/" CONTAINER_RESULTS, 0, 0, 0755) ; @@ -596,6 +596,7 @@ static inline void make_image (char const *base) } else { + auto_script(base, "run-image/" SCANDIR "/.s6-svscan/SIGTERM", &put_shebang_options, 0) ; auto_script(base, "run-image/" SCANDIR "/.s6-svscan/crash", &death_script, "crashed") ; auto_script(base, "run-image/" SCANDIR "/.s6-svscan/finish", &death_script, "exited") ; auto_dir(base, "run-image/" SCANDIR "/" RUNLEVELD_SERVICEDIR, 0, 0, 0755) ; -- cgit v1.2.3