Перейти к содержимому

Рецепт и деплой на VPS

Нужен VPS? 24Racks недорогой, и этот проект на нём работает нормально. Подробнее о выборе в Хостинге.

Есть три пути. Выбери один.

  1. Рецепт txAdmin - проще всего для нового сервера.
  2. DEPLOY_VPS.bat - для Windows VPS, который хочется обновлять двойным щелчком.
  3. Вручную - см. Установку.

В мастере настройки txAdmin выбери Remote URL Template и вставь:

https://raw.githubusercontent.com/Arcainex/bs19/main/recipe.yaml

Что делает рецепт, по порядку:

  1. Просит у txAdmin подключение к базе данных (connect_database).
  2. Скачивает с GitHub фреймворк, карту и server.cfg.
  3. Скачивает последний релиз oxmysql в resources/.
  4. Записывает в server.cfg твой лицензионный ключ, connection string базы, endpoint’ы и sv_maxclients.
  5. Добавляет твой аккаунт txAdmin как admin principal в конец server.cfg.

На шаге с базой данных используй свой хост MariaDB, порт 3306 и пользователя, который может создавать базу. Загрузка около 700 МБ, дай ей несколько минут. Когда закончится, нажми Save & Run Server и включи OneSync On в Settings > FXServer.

Таблицы создаёт при первом запуске bs_core, не импортируй никакой SQL.

Если тебе дали скрипт деплоя на VPS, запусти его на VPS. Один раз для установки и снова позже для обновления. Что он делает:

  • Спрашивает папку данных сервера (по умолчанию C:\FXServer\beyondsurvival).
  • Устанавливает Git, если его нет (winget или официальный установщик на Windows Server).
  • Клонирует репозиторий, а при последующих запусках сбрасывает server.cfg и делает git pull --ff-only.
  • Устанавливает MariaDB через winget, если не находит ни MariaDB, ни MySQL.
  • Создаёт базу beyondsurvival и пользователя beyondsurvival со случайным паролем, так же как это делает txAdmin. Сначала пробует root без пароля и спрашивает только если не вышло.
  • Сохраняет connection string в .dbconfig (исключён из git), чтобы последующие запуски больше не спрашивали.
  • Записывает db.cfg со строкой mysql_connection_string.

После первого запуска в txAdmin выбери Existing Server Data, укажи папку, выбери server.cfg и включи OneSync. Для обновления: снова запусти bat и перезапусти сервер.

В server.cfg рядом с началом есть строка exec db.cfg. В db.cfg одна строка:

set mysql_connection_string "mysql://USER:PASSWORD@localhost/beyondsurvival?charset=utf8mb4"

Он в .gitignore, так что git pull его никогда не трогает и не конфликтует с твоим паролем. Если ты настраивал сервер вручную, можно сделать так же: впиши строку в db.cfg сам и оставь строку-заглушку в server.cfg. exec идёт после заглушки, поэтому настоящая строка побеждает.