mirror of
https://github.com/mailcow/mailcow-dockerized.git
synced 2024-12-14 10:52:49 +02:00
[Watchdog] Fix kill -0 check, use tini and send kill request to tini instead of parent pid, sleep longer
This commit is contained in:
parent
c5dd30b058
commit
ac413058c1
@ -1,5 +1,4 @@
|
|||||||
FROM alpine:3.6
|
FROM alpine:3.6
|
||||||
|
|
||||||
LABEL maintainer "André Peters <andre.peters@servercow.de>"
|
LABEL maintainer "André Peters <andre.peters@servercow.de>"
|
||||||
|
|
||||||
# Installation
|
# Installation
|
||||||
@ -23,10 +22,12 @@ RUN apk add --update \
|
|||||||
perl-socket6 \
|
perl-socket6 \
|
||||||
perl-mime-lite \
|
perl-mime-lite \
|
||||||
perl-term-readkey \
|
perl-term-readkey \
|
||||||
|
tini \
|
||||||
&& curl https://raw.githubusercontent.com/mludvig/smtp-cli/v3.8/smtp-cli -o /smtp-cli \
|
&& curl https://raw.githubusercontent.com/mludvig/smtp-cli/v3.8/smtp-cli -o /smtp-cli \
|
||||||
&& chmod +x smtp-cli
|
&& chmod +x smtp-cli
|
||||||
|
|
||||||
COPY watchdog.sh /watchdog.sh
|
COPY watchdog.sh /watchdog.sh
|
||||||
|
|
||||||
|
ENTRYPOINT ["/sbin/tini", "-g", "--"]
|
||||||
# Less verbose
|
# Less verbose
|
||||||
CMD /watchdog.sh 2> /dev/null
|
CMD /watchdog.sh 2> /dev/null
|
||||||
|
BIN
data/Dockerfiles/watchdog/tini
Executable file
BIN
data/Dockerfiles/watchdog/tini
Executable file
Binary file not shown.
@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
trap "exit" INT TERM
|
trap "exit" INT TERM
|
||||||
trap "kill 0" EXIT
|
trap "kill 0" EXIT
|
||||||
PARENT_PID=$$
|
|
||||||
|
|
||||||
# Prepare
|
# Prepare
|
||||||
BACKGROUND_TASKS=()
|
BACKGROUND_TASKS=()
|
||||||
@ -351,12 +350,12 @@ BACKGROUND_TASKS+=($!)
|
|||||||
(
|
(
|
||||||
while true; do
|
while true; do
|
||||||
for bg_task in ${BACKGROUND_TASKS[*]}; do
|
for bg_task in ${BACKGROUND_TASKS[*]}; do
|
||||||
if ! kill -0 ${bg_task} 21>&2; then
|
if ! kill -0 ${bg_task} 1>&2; then
|
||||||
echo "Worker ${bg_task} died, stopping watchdog and waiting for respawn..."
|
echo "Worker ${bg_task} died, stopping watchdog and waiting for respawn..."
|
||||||
log_to_redis "Worker ${bg_task} died, stopping watchdog and waiting for respawn..."
|
log_to_redis "Worker ${bg_task} died, stopping watchdog and waiting for respawn..."
|
||||||
kill -TERM ${PARENT_PID}
|
kill -TERM 1
|
||||||
fi
|
fi
|
||||||
sleep 1
|
sleep 10
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
) &
|
) &
|
||||||
|
Loading…
Reference in New Issue
Block a user