minecraft
systemd unit
root@v1:~# cat /etc/systemd/system/minecraft@.service
[Unit]
Description=Minecraft server %I
After=local-fs.target network.target
[Service]
WorkingDirectory=/home/ubuntu/%i
User=ubuntu
Group=ubuntu
Type=forking
# Run it as a non-root user in a specific directory
ExecStart=/usr/bin/screen -h 1024 -dmS minecraft ./minecraft_server.sh
# I like to keep my commandline to launch it in a separate file
# because sometimes I want to change it or launch it manually
# If it's in the WorkingDirectory, then we can use a relative path
# Send "stop" to the Minecraft server console
ExecStop=/usr/bin/screen -p 0 -S minecraft -X eval 'stuff \"stop\"\015'
# Wait for the PID to die - otherwise it's killed after this command finishes!
ExecStop=/bin/bash -c "while ps -p $MAINPID > /dev/null; do /bin/sleep 1; done"
# Note that absolute paths for all executables are required!
[Install]
WantedBy=multi-user.target
серваки
Paper: https://papermc.io/
Purpur: https://github.com/PurpurMC/Purpur https://purpurmc.org/
Оптимизация: https://github.com/YouHaveTrouble/minecraft-optimization
Forge+Bukkit: https://github.com/IzzelAliz/Arclight
Остальные форки: https://rubukkit.org/threads/nemnogo-o-forkax-paper-i-ne-tolko.176425/
Почему не стоит использовать серваки с плагинами и модами: https://rubukkit.org/threads/ne-ispolzujte-magma-mohist-catserver-i-podobnye-jadra.185662/
моды
https://4mforyou.com/blog/forge-vs-fabric-vs-quilt-kakoj-mod-zagruzchik-minecraft-vybrat/