Свой сервер
Сервер на Linux
Сборка для Linux работает на x64 с glibc 2.38 и новее — это Ubuntu 24.04, Debian 13 и их ровесники. На более старой системе запускайте Docker-образ.
Скачать и распаковать
Заголовок раздела «Скачать и распаковать»sudo mkdir -p /opt/nodemp && sudo chown "$USER" /opt/nodempcd /opt/nodempurl=https://github.com/NodeMP-BeamNG/releases/releases/download/server-v1.12.0curl -LO "$url/Node-Server-1.12.0-linux-x64.tar.gz"curl -LO "$url/Node-Server-1.12.0-linux-x64.tar.gz.sha256"sha256sum -c Node-Server-1.12.0-linux-x64.tar.gz.sha256tar -xzf Node-Server-1.12.0-linux-x64.tar.gzsha256sum должен ответить OK. В папке появятся Node-Server, tools/, modules/ и
examples/.
Поставить Lua 5.1
Заголовок раздела «Поставить Lua 5.1»Клиентские скрипты плагинов сервер перед отправкой игрокам обфусцирует. Обфускатор написан на Lua и запускается через Lua 5.1, которой в архиве для Linux нет:
sudo apt install -y lua5.1Путь к ней сервер берёт из переменной NODE_LUA. Без Lua сервер тоже работает, только отправляет
клиентские скрипты как есть и предупреждает об этом при запуске.
Запустить
Заголовок раздела «Запустить»NODE_LUA=/usr/bin/lua5.1 ./Node-ServerСервер пишет в текущую папку server.toml, logs/ и content/. Остановить — Ctrl+C или stop.
Открыть порт
Заголовок раздела «Открыть порт»С ufw:
sudo ufw allow 30814/tcpsudo ufw allow 30814/udpУ VPS-провайдера бывает ещё и свой брандмауэр в панели управления — там порт тоже нужно открыть.
Служба systemd
Заголовок раздела «Служба systemd»Так сервер запускается вместе с системой и поднимается после сбоя. Заведите для него пользователя и отдайте ему папку:
sudo useradd -r -s /usr/sbin/nologin -d /opt/nodemp nodempsudo chown -R nodemp:nodemp /opt/nodempСоздайте файл /etc/systemd/system/nodemp.service:
[Unit]Description=NodeMP serverAfter=network-online.targetWants=network-online.target
[Service]User=nodempWorkingDirectory=/opt/nodempEnvironment=NODE_LUA=/usr/bin/lua5.1EnvironmentFile=-/etc/nodemp.envExecStart=/opt/nodemp/Node-ServerRestart=alwaysRestartSec=5
[Install]WantedBy=multi-user.targetВключите и запустите службу, затем посмотрите лог:
sudo systemctl daemon-reloadsudo systemctl enable --now nodempjournalctl -u nodemp -fВ /etc/nodemp.env удобно держать секреты, например ключ сервера: по одной строке ИМЯ=значение
без кавычек. Переменные окружения важнее server.toml, так что секрет не попадёт в файл, который
вы однажды вставите в чат поддержки. Пример — на странице
Попасть в список.
У службы нет терминала, поэтому консоль сервера выключена. Включить её чтение из стандартного ввода
можно настройкой [server] console, но для службы это обычно не нужно.