Обзор развертывания Palworld на сервере¶
Предварительные требования¶
Для корректной работы системы должны быть соблюдены следующие условия:
-
Операционная система: Ubuntu.
-
Права доступа: Права суперпользователя (root) для установки системных пакетов и Docker.
-
Доменное имя: Наличие зарегистрированного домена в зоне
hostkey.in. -
Порты: Должны быть открыты следующие порты:
-
80/TCP— для проверки SSL-сертификатов (HTTP). -
443/TCP— для доступа к веб-панели управления (HTTPS). -
12444/TCP— для работы демона через защищенное соединение (WSS). -
8211/UDP— игровой порт сервера Palworld. -
25575/TCP— RCON порт.
FDQN итоговой панели на домене hostkey.in¶
Для управления сервером используется выделенный поддомен. Шаблон формирования адреса представлен в таблице:
| Параметр | Значение |
|---|---|
| Префикс | palworld |
| Домен | hostkey.in |
| Полный шаблон | palworld{Server_ID}.hostkey.in |
Структура файлов и каталогов¶
Все основные данные и конфигурации распределены по следующим директориям:
-
/opt/proxy— системные файлы прокси-сервера (Nginx, SSL сертификаты). -
/opt/mcsmanager-web-data— данные веб-панели управления. -
/opt/mcsmanager-web-logs— логи веб-панели. -
/opt/mcsm/daemon/data— рабочие файлы и конфигурации демона. -
/opt/mcsmanager-daemon-logs— логи демона.
Процесс установки приложения¶
Развертывание представляет собой комплексный процесс, включающий установку среды выполнения и автоматическую настройку игрового сервера:
-
Подготовка окружения: Установка Docker, плагина
docker-composeи необходимых системных библиотек Python. -
Создание структуры данных: Подготовка директорий для работы веб-интерфейса и демона управления с установкой прав доступа (UID/GID 1000).
-
Развертывание компонентов управления: Запуск контейнеров веб-панели и демона MCSManager.
-
Настройка проксирования и SSL: Развертывание Nginx для обеспечения безопасного соединения через Let's Encrypt (Certbot) и настройка перенаправления трафика на внутренние порты панели и демона.
-
Автоматическая инициализация:
-
Создание учетной записи администратора через API.
-
Автоматическое связывание локального демона с веб-панелью.
-
Создание игрового экземпляра Palworld с заданными параметрами (пароль, порт, ресурсы).
Права доступа и безопасность¶
-
Пользователь: Все данные в директориях
/opt/mcsmanagerпринадлежат пользователю сUID 1000. -
Брандмауэр: Доступ к панели осуществляется через защищенный протокол HTTPS. Внешний доступ к демону ограничен портом
12444(через прокси). -
Безопасность игрового сервера: Пароли администратора и игрока устанавливаются автоматически при создании экземпляра.
Базы данных¶
В данной конфигурации база данных не вынесена в отдельный контейнер, а используется встроенный механизм хранения данных MCSManager внутри томов Docker (директории /opt/mcsmanager/...).
Контейнеры Docker и их запуск¶
При развертывании запускается группа контейнеров:
Веб-панель управления¶
-
Имя образа:
tophc7/mcsm:web -
Порты:
23333:23333(внутренний) -
Тома:
/opt/mcsmanager/web/data:/opt/mcsmanager/web/data -
Политика перезапуска:
unless-stopped
Демон управления (Node)¶
-
Имя образа:
tophc7/mcsm:daemon -
Порты:
24444:24444(внутренний) -
Тома:
-
/opt/mcsmanager/daemon/data:/opt/mcsmanager/daemon/data -
/var/run/docker.sock:/var/run/docker.sock(для управления Docker изнутри контейнера) -
Политика перезапуска:
unless-stopped
Прокси-сервер Nginx¶
-
Имя образа:
nginx:alpine -
Контейнер:
palworld-proxy -
Сеть:
host(для прямого управления портами) -
Тома:
-
/opt/proxy/nginx/conf.d:/etc/nginx/conf.d:ro -
/opt/proxy/letsencrypt:/etc/letsencrypt -
/opt/proxy/www:/var/www/certbot
Сервер Palworld¶
-
Имя образа:
kagurazakanya/palworld:latest(или пользовательский образ) -
Контейнер:
palworld-server -
Порты:
-
8211/udp(игровой трафик) -
25575/tcp(RCON) -
Переменные окружения:
PORT,SERVER_NAME,ADMIN_PASSWORD,SERVER_PASSWORD,MULTITHREADING. -
Политика перезапуска:
unless-stopped
Сертификаты SSL (Certbot)¶
-
Имя образа:
certbot/certbot -
Контейнер:
palworld-certbot -
Тома:
-
/opt/proxy/letsencrypt:/etc/letsencrypt -
/opt/proxy/www:/var/www/certbot
Инструкция по обновлению приложения¶
Для обновления игрового сервера и компонентов управления необходимо выполнить следующие действия:
-
Обновить образы контейнеров с помощью команды:
-
Перезапустить сервисы для применения изменений:
Расположение конфигурационных файлов и данных¶
-
Конфигурации Nginx:
/opt/proxy/nginx/conf.d/ -
Данные игрового сервера:
/palworld/(внутри контейнера, привязано к локальной папке) -
Сертификаты SSL:
/opt/proxy/letsencrypt/live/
Доступные порты для подключения¶
| Порт | Протокол | Назначение |
|---|---|---|
443 | TCP | Веб-панель управления (HTTPS) |
12444 | TCP | Защищенное соединение с демоном (WSS) |
8211 | UDP | Игровой сервер Palworld |
25575 | TCP | RCON управление |
Запуск, остановка приложения¶
Управление основными компонентами осуществляется через Docker:
-
Запуск всех сервисов:
-
Остановка игрового сервера:
-
Просмотр логов панели: