minecraft-build-testing / Docker prune (vm-docker-build2) (push) Successful in 3s
minecraft-build-testing / poll-debian-base-and-detect-changes (push) Successful in 19s
minecraft-build-testing / Build and Push testing (push) Successful in 25s
minecraft-build-testing / generate-changelogs (push) Successful in 8s
minecraft-build-testing / generate-build-info (push) Successful in 10s
32 lines
771 B
Bash
32 lines
771 B
Bash
#!/bin/bash
|
|
# Copyright (c) 2026 fithwum
|
|
# All rights reserved
|
|
|
|
LOGFILE=/mcserver/logs/latest.log
|
|
SESSION=mcserver
|
|
|
|
cd /mcserver
|
|
|
|
mkdir -p "$(dirname "$LOGFILE")"
|
|
touch "$LOGFILE"
|
|
|
|
cleanup() {
|
|
echo "[INFO] Stopping Minecraft..."
|
|
if tmux has-session -t "$SESSION" 2>/dev/null; then
|
|
tmux send-keys -t "$SESSION" "stop" Enter
|
|
for i in {1..60}; do
|
|
tmux has-session -t "$SESSION" 2>/dev/null || break
|
|
sleep 1
|
|
done
|
|
tmux kill-session -t "$SESSION" 2>/dev/null || true
|
|
fi
|
|
exit 0
|
|
}
|
|
|
|
trap cleanup SIGTERM SIGINT
|
|
|
|
echo "INFO ! Starting Minecraft Server $MC_TYPE-$MC_VERSION"
|
|
tmux new-session -d -s "$SESSION" \
|
|
"cd $MC_DIR && ./run-$MC_TYPE-$MC_VERSION.sh 2>&1 | tee -a '$LOGFILE'"
|
|
|
|
exec tail -F "$LOGFILE" |