Обзор развертывания Palworld на сервере¶
Предварительные требования¶
Для корректной работы системы требуются следующие параметры и условия:
-
Операционная система: Ubuntu.
-
Права доступа: Пользователь с правами
sudoдля установки Docker и управления контейнерами. -
Доменное имя: Требуется наличие домена в зоне
hostkey.in. -
Порты: Система использует следующие порты (в зависимости от конфигурации):
-
443/TCP: HTTPS доступ к панели управления. -
12444/TCP: Доступ к демону через WebSocket (WSS). -
8211/UDP: Игровой порт Palworld. -
25575/TCP: RCON порт.
-
FDQN итоговой панели на домене hostkey.in¶
| Параметр | Значение |
|---|---|
| Префикс | palworld |
| Домен | hostkey.in |
| Полный шаблон | palworld{Server_ID_from_Invapi}.hostkey.in |
Структура файлов и каталогов¶
Основные данные и конфигурации распределены по следующим путям:
-
/opt/proxy: Базовая директория прокси-сервера Nginx.-
/opt/proxy/nginx/conf.d: Конфигурационные файлы Nginx. -
/opt/proxy/letsencrypt: Сертификаты SSL (Let's Encrypt). -
/opt/proxy/www: Файлы для проверки ACME.
-
-
/opt/mcsmanager/daemon/data: Данные демона MCSManager. -
/opt/mcsmanager/web/data: Данные веб-панели MCSManager. -
/opt/mcsm/daemon/logs: Логи демона.
Процесс установки приложения¶
Развертывание включает автоматическую установку Docker, настройку контейнеров MCSManager (Web и Daemon), получение SSL-сертификатов через Certbot и создание игрового инстанса Palworld. После запуска панели управления происходит автоматическая регистрация локального узла (Daemon) в веб-интерфейсе и запуск игрового сервера.
Контейнеры Docker и их запуск¶
Система использует несколько контейнеров для обеспечения работы панели управления, проксирования и игрового процесса.
Прокси-сервер и сертификаты¶
| Имя контейнера | Образ | Порты | Тома (volumes) | Политика перезапуска |
|---|---|---|---|---|
palworld-proxy | nginx:alpine | network_mode: host | /opt/proxy/nginx/conf.d:/etc/nginx/conf.d:ro, /opt/proxy/letsencrypt:/etc/letsencrypt, /opt/proxy/www:/var/www/certbot | unless-stopped |
palworld-certbot | certbot/certbot | — | /opt/proxy/letsencrypt:/etc/letsencrypt, /opt/proxy/www:/var/www/certbot | — |
Управление (MCSManager)¶
| Имя контейнера | Образ | Порты | Тома (volumes) | Политика перезапуска |
|---|---|---|---|---|
mcsm-daemon | tophc7/mcsm:daemon | 24444:24444 | /opt/mcsmanager/daemon/data:/opt/mcsmanager/daemon/data, /var/run/docker.sock:/var/run/docker.sock | unless-stopped |
mcsm-web | tophc7/mcsm:web | 23333:23333 | /opt/mcsmanager/web/data:/opt/mcsmanager/web/data | unless-stopped |
Игровой сервер¶
| Имя контейнера | Образ | Порты | Переменные окружения (env) | Политика перезапуска |
|---|---|---|---|---|
palworld-server | kagurazakanya/palworld:latest | 8211/udp, 25575/tcp | PORT=8211, PLAYERS=16, SERVER_NAME=Palworld-{Server_ID}, ADMIN_PASSWORD={password} | unless-stopped |
Базы данных¶
В данной конфигурации база данных не развертывается в отдельном контейнере, а используется встроенная функциональность MCSManager для хранения метаданных и настроек. Данные хранятся в директориях /opt/mcsmanager/daemon/data и /opt/mcsmanager/web/data.
Обновление приложения¶
Обновление выполняется через pull (обновление образов) и перезапуск контейнеров:
docker compose -f /opt/proxy/docker-compose.yml pull && docker compose -f /opt/proxy/docker-compose.yml up -d
Настройки прав¶
Для корректной работы директорий с данными установлены следующие права:
- Директории данных MCSManager создаются с владельцем и группой
1000:1000и правами доступа0755.
Доступные порты для подключения¶
| Порт | Протокол | Описание |
|---|---|---|
443 | TCP | HTTPS доступ к веб-панели управления |
12444 | TCP | WebSocket (WSS) для связи панели с демоном |
8211 | UDP | Игровой трафик Palworld |
25575 | TCP | RCON порт для удаленного управления игрой |
Запуск, остановка приложения¶
Управление контейнерами осуществляется через Docker:
-
Запуск всех сервисов прокси:
-
Перезапуск прокси-сервера: