Маинкрафт сервер для меня и друзей

Как можно легко создать свой сервер? Я пробовал через консоль, но это очень долго и если я захочу изменить версию или карту то будет очень сложно это сделать.

Как я делал:

  1. Создал директорию, скачал джаву, ядро, создал start.sh
  2. Добавил плагин от playit.gg (что бы играть не только из локальной сети)
  3. С помощью ИИ создал сервис который запускает screen и в нём маинкрафт сервер

Моя сборка:
CPU: 4 x Intel(R) N150
RAM: 16 GB
SSD: 1 TB

Может кто то делал подобное/имеет опыт и может дать мне совет? =)

Рекомендую рассмотреть Crafty Controller

Запускал для себя посмотреть как и что работает, вполне себе рабочая история.

2 лайка

Могу порекомендовать https://github.com/itzg/docker-minecraft-server

Сам лично пользуюсь. Есть сайт с хорошей документацией

1 лайк

Я себе поставил птеродактиль , с нодой и разворачиваю там сервера , майнкрафт и другие игры можно , с разными параметрами , на роутере просто открываю нужные, единственное давать доступ к панели управления другим это проблема с костылями

если хочется прямо контроль то рекомендую разобраться с веб-панелью 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

1 лайк