если хочется прямо контроль то рекомендую разобраться с веб-панелью https://www.mcsmanager.com/
если нужно запустить чисто сервер без завитушек, то любой обновляемый докер образ кубиков отлично подойдёт. лично я запускаю джавой через скрипт
ntdvme@minecraft:~$ sudo cat /home/mc/lost-souls.sh
[sudo] пароль для ntdvme:
Модовая сборка запускается так:
#ANSIBLE PLAYBOOK
#!/bin/bash
TMUX_SESSION=“lost-souls” # Имя tmux-сессии
SERVER_DIR=“/home/mc/lost-souls” # Директория сервера
RUN_SCRIPT=“run.sh” # Скрипт запуска
cd “${SERVER_DIR}” || { echo “Ошибка: Директория ${SERVER_DIR} не существует!”; exit 1; }
if ! tmux has-session -t “${TMUX_SESSION}” 2>/dev/null; then
echo “Запускаем run.sh в tmux-сессии ${TMUX_SESSION}…”
tmux new-session -d -s “${TMUX_SESSION}” “bash ${RUN_SCRIPT}”
echo “Команда для подключения: tmux attach -t ${TMUX_SESSION}”
else
echo “Ошибка: Сессия ${TMUX_SESSION} уже запущена!”
echo “Подключиться: tmux attach -t ${TMUX_SESSION}”
echo “Список сессий: tmux ls”
fi
#ANSIBLE PLAYBOOK
А ванильные кубики так:
ntdvme@minecraft:~$ sudo cat /home/mc/start.sh
#ANSIBLE PLAYBOOK
#!/bin/bash
TMUX_SESSION=“mcserver” # Имя tmux-сессии
SERVER_DIR=“/home/mc/serverfiles” # Директория сервера
JAR_NAME=“minecraft_server.jar” # Имя jar-файла
MIN_RAM=“4G” # Минимальная память
MAX_RAM=“8G” # Максимальная память
CPU_CORES=8 # Доступные ядра (Proxmox VM)
AIKAR_FLAGS=“-XX:+UseG1GC
-XX:+ParallelRefProcEnabled
-XX:MaxGCPauseMillis=150
-XX:+UnlockExperimentalVMOptions
-XX:+DisableExplicitGC
-XX:+AlwaysPreTouch
-XX:G1NewSizePercent=30
-XX:G1MaxNewSizePercent=40
-XX:G1HeapRegionSize=8M
-XX:G1ReservePercent=20
-XX:G1HeapWastePercent=5
-XX:G1MixedGCCountTarget=4
-XX:InitiatingHeapOccupancyPercent=15
-XX:G1MixedGCLiveThresholdPercent=90
-XX:G1RSetUpdatingPauseTimePercent=5
-XX:SurvivorRatio=32
-XX:+PerfDisableSharedMem
-XX:MaxTenuringThreshold=1
-Dusing.aikars.flags=https://mcflags.emc.gs
-XX:+UseNUMA”
MULTITHREAD_FLAGS=“-XX:ActiveProcessorCount=${CPU_CORES}
-XX:ParallelGCThreads=3
-XX:ConcGCThreads=2
-XX:CICompilerCount=4”
CMD=“java -Xms${MIN_RAM} -Xmx${MAX_RAM} ${AIKAR_FLAGS} ${MULTITHREAD_FLAGS} -jar ${JAR_NAME} nogui”
cd “${SERVER_DIR}” || { echo “Ошибка: Директория ${SERVER_DIR} не существует!”; exit 1; }
if ! tmux has-session -t “${TMUX_SESSION}” 2>/dev/null; then
echo “Запускаем сервер в tmux-сессии ${TMUX_SESSION}…”
tmux new-session -d -s “${TMUX_SESSION}” “${CMD}”
echo “Команда для подключения: tmux attach -t ${TMUX_SESSION}”
echo “Используемые параметры JVM:”
echo “${CMD}”
else
echo “Ошибка: Сессия ${TMUX_SESSION} уже запущена!”
echo “Подключиться: tmux attach -t ${TMUX_SESSION}”
echo “Список сессий: tmux ls”
fi
#ANSIBLE PLAYBOOK