Fix shutdown behaviour

This commit is contained in:
JeremyStar™ 2024-04-20 16:46:20 +02:00
parent 3a90e80b87
commit b46300a32d
Signed by: JeremyStarTM
GPG key ID: E366BAEF67E4704D
3 changed files with 2 additions and 32 deletions

View file

@ -22,10 +22,6 @@ MCSD_SAFEMODE=false
# Removes all log files on startup (restarts are not affected)
MCSD_CLEAN_LOGS=true
# AUTO_RESTART
## Restarts the server automatically if it exits
MCSD_AUTO_RESTART=true
#################
# Memory limits #
#################

View file

@ -4,7 +4,7 @@ services:
mcsd:
build: .
container_name: mcsd
restart: no
restart: unless-stopped
stop_grace_period: 120s
volumes:
- ./server:/data

View file

@ -168,14 +168,7 @@ function run() {
cd /data||exit 69
# We want to use ${ARGS} without using parenthesis
# shellcheck disable=SC2086
"/usr/lib/jvm/java-${MCSD_JAVA_VERSION}-openjdk/bin/java" ${FLAGS} -jar "/data/server.jar" ${ARGS} &
# Set server pid
export "CHILDPID=${!}"
# Setup trap
trap kill_server SIGTERM
trap kill_server SIGINT
# Wait for server to end
wait
exec "/usr/lib/jvm/java-${MCSD_JAVA_VERSION}-openjdk/bin/java" ${FLAGS} -jar "/data/server.jar" ${ARGS} &
}
# Need I say more?
@ -187,26 +180,7 @@ function main() {
clean_logs
compile_args
compile_flags
# Run server once
run
# Restart server if enabled
if [ "${SHUTDOWN}" == "true" ]; then
echo ":: Ending execution (SHUTDOWN=true)"
exit 0
fi
case "${MCSD_AUTO_RESTART}" in
"true")
echo ":: Restarting server"
run
;;
"false")
echo ":: Ending execution (MCSD_AUTO_RESTART=false)"
exit 0
;;
*)
internal_error "\$MCSD_AUTO_RESTART has invalid value"
;;
esac
}
main