Перейти к содержанию

Панель управления Pterodactyl

В этой статье

Информация

Pterodactyl - это бесплатная панель управления игровыми серверами с открытым исходным кодом. Она позволяет централизованно управлять серверами для Minecraft, CS2, Rust и 50+ других игр через веб-интерфейс.

Pterodactyl. Основные возможности

Pterodactyl - это современное решение для управления игровыми серверами, которое сочетает в себе:

  • Поддержка 50+ игр: Предоставляет готовые шаблоны для быстрой установки популярных игровых серверов. Автоматически настраивает ПО, зависимости и параметры запуска, поддерживает выбор версий игр и добавление кастомных шаблонов.
  • Точное управление ресурсами: Контролирует распределение RAM, CPU, дискового пространства и приоритетов между серверами. Предотвращает перегрузки, выделяет ресурсы по квотам и использует SWAP-память для стабильности.
  • Надежные автоматические бэкапы: Обеспечивает гибкое резервное копирование по расписанию с выбором данных (весь сервер или ключевые файлы). Хранит бэкапы локально или в облаке (S3, FTP, GDrive) с шифрованием и мгновенным восстановлением.
  • Эффективная мультисерверность: Запускает каждый сервер в изолированном Docker-контейнере. Автоматически распределяет нагрузку между нодами, назначает порты без конфликтов и позволяет группировать связанные серверы.
  • Гибкий мультипользовательский доступ: Управляет правами через ролевую модель (предустановленные + кастомные роли) с 50+ гранулярными разрешениями. Поддерживает временный доступ, аудит действий и двухфакторную аутентификацию.
  • Консоль управления в реальном времени: Дает полный контроль через веб-интерфейс с интерактивным терминалом (подобным SSH). Включает цветовое форматирование, историю команд, быстрые кнопки действий и оповещения о событиях.
  • Мониторинг статистики в реальном времени: Отображает графики использования ресурсов (CPU, RAM, диск, сеть) и игровые метрики (онлайн, TPS, пинг). Позволяет создавать кастомные дашборды, настраивать оповещения и экспортировать данные в CSV.
  • Упрощенное управление модами/плагинами: Предлагает встроенный магазин для автоматической установки модов, управление версиями и зависимостями. Включает визуальный редактор конфигов с подсветкой синтаксиса и уведомления об обновлениях.
  • Автоматическое обновление: Обеспечивает бесперебойную работу системы. Обновляет игровые серверы по расписанию с тестовым режимом и откатом при ошибках. Обновляет панель управления одной командой (php artisan p:upgrade), проверяя совместимость и мигрируя БД без потерь. Автообновляет демон Wings, поддерживая совместимость с разными дистрибутивами Linux.

Особенности сборки

ID Имя ПО Совместимые ОС VPS BM VGPU GPU Мин. ЦПУ (Ядер) Мин. ОЗУ (Гб) Мин. HDD/SDD (Гб) Доступно
326 Pterodactyl Ubuntu 22.04 + + + + 1 1 - ЗАКАЗАТЬ

Основные компоненты системы:

Компонент Назначение
Panel Веб-интерфейс управления (PHP/Laravel). Предоставляет админ-панель и пользовательский интерфейс для управления серверами
Wings Демон для физического запуска игровых серверов (Go). Устанавливается отдельно на машинах, где будут работать игровые серверы
База данных MariaDB для хранения конфигураций, пользователей, серверов и настроек
Docker Платформа контейнеризации, необходима для работы Wings и изоляции игровых серверов

Конфигурационные файлы

Путь Назначение
/var/www/pterodactyl/.env Основные настройки Panel: подключение к базе данных, Redis, APP_URL, APP_KEY
/var/www/pterodactyl/storage/logs/laravel.log Логи работы Panel (ошибки приложения, запросы)
/var/log/nginx/pterodactyl.app-error.log Логи веб-сервера NGINX для Panel
/etc/pterodactyl/config.yml Конфигурация Wings: токен авторизации, URL Panel, настройки Docker. Создается при установке Wings
/var/lib/pterodactyl/volumes/ Директория с данными игровых серверов: файлы миров, конфигурации, плагины. Создается после установки Wings

Что установлено автоматически

Плейбук автоматически устанавливает и настраивает:

  • Pterodactyl Panel - центральная панель управления с веб-интерфейсом;
  • MariaDB - база данных для хранения всех данных системы;
  • Redis - для кэширования и очередей задач;
  • NGINX - веб-сервер для обслуживания Panel;
  • PHP 8.3 + PHP-FPM - для работы Laravel приложения;
  • Certbot - для автоматического получения SSL-сертификатов;
  • Systemd сервисы - pteroq (обработка очередей), cron задачи (планировщик).

Что потребуется установить дополнительно

Для запуска игровых серверов необходимо:

  • Wings - демон, который физически запускает и управляет игровыми серверами в Docker-контейнерах

Wings устанавливается на каждую машину (ноду), где планируется запуск игровых серверов. Это может быть тот же сервер, где установлен Panel (конфигурация "всё-в-одном"), или отдельные выделенные серверы (распределенная архитектура).

Системные требования

Для Panel (панели управления)

Минимальные требования:

  • Процессор: 2+ ядра;
  • Память: 2 GB RAM (рекомендуется 4 GB для стабильной работы);
  • Диск: 20 GB SSD (рекомендуется 40+ GB для логов и резервных копий);
  • ОС: Ubuntu 22.04 LTS (Jammy) - строго эта версия для автоматической установки.

ПО (устанавливается автоматически):

  • PHP 8.3 + PHP-FPM;
  • MariaDB 10.6+;
  • Redis 7.0+;
  • NGINX;
  • Composer 2;
  • Certbot (для SSL);
  • Docker (предустановлен в образе).

Сетевые требования:

  • Открытые порты: 80 (HTTP), 443 (HTTPS);
  • Статический IP-адрес или доменное имя (для SSL-сертификата);
  • Стабильное интернет-соединение.

Для Node (ноды с игровыми серверами)

Для 5-10 одновременных игровых серверов:

  • Процессор: 4+ ядра (рекомендуется 6-8 ядер для требовательных игр);
  • Память: 8 GB RAM (рекомендуется 12-16 GB в зависимости от игр);
  • Диск: 50 GB SSD (рекомендуется 100+ GB для нескольких серверов с модами);
  • ОС: Ubuntu 20.04/22.04, Debian 10/11, CentOS ⅞ (любой Linux с поддержкой Docker).
  • ПО:
    • Docker (предустановлен в образе);
    • Wings (требует установки).

Сетевые требования:

  • Открытые порты:
    • 8080 - Wings API (связь с Panel);
    • 2022 - SFTP (загрузка файлов на игровые серверы);
    • 25565-25665 - диапазон игровых портов (настраивается индивидуально);
  • Стабильное интернет-соединение с хорошей пропускной способностью;
  • Низкая задержка (low latency) для комфортной игры.

Конфигурация "всё-в-одном" (Panel + Wings на одном сервере)

Для тестирования или небольших проектов можно использовать один сервер:

  • Процессор: 4+ ядра;
  • Память: 8 GB RAM (минимум 6 GB);
  • Диск: 60 GB SSD (рекомендуется 100+ GB);
  • ОС: Ubuntu 22.04 LTS.

В этой конфигурации на одном сервере работают:

  • Pterodactyl Panel (веб-интерфейс);
  • Wings (демон для запуска серверов);
  • База данных и кэш;
  • Игровые серверы в Docker-контейнерах.

Рекомендации по ресурсам для игр

Примерные требования на один игровой сервер:

Игра RAM CPU Диск
Minecraft (Vanilla/Paper) 2-4 GB 2+ ядра 5-10 GB
Minecraft с модами (Forge/Fabric) 4-8 GB 4+ ядра 10-20 GB
CS2 / CS:GO 4-6 GB 4+ ядра 15-20 GB
Rust 8-12 GB 4+ ядра 20-30 GB
ARK: Survival Evolved 8-16 GB 6+ ядра 30-50 GB
Terraria 1-2 GB 2+ ядра 2-5 GB
Valheim 4-6 GB 4+ ядра 5-10 GB

Начало работы после развертывания Pterodactyl

После оплаты заказа на указанную при регистрации электронную почту придет уведомление о готовности сервера к работе. В нем будет указан IP-адрес VPS, а также логин и пароль для подключения. Управление оборудованием клиенты нашей компании осуществляют в панели управления серверами и API - Invapi.

Данные для авторизации, которые можно найти или во вкладке Информация >> Тэги панели управления сервером или в присланном e-mail:

  • Ссылка: в теге webpanel. Для доступа к панели администратора добавьте /admin к основной ссылке;
  • Логин: admin;
  • Пароль: приходит в письме на вашу электронную почту при готовности сервера к работе после развертывания ПО.

Первая авторизация

  1. Откройте веб-браузер и перейдите по адресу вашей панели Pterodactyl
  2. Нажмите Login:

  3. После успешной авторизации вы попадете на главную страницу панели.

  4. Для перехода в панель администратора нажмите на кнопку :

Создание пользователя

  1. В левом меню панели администратора нажмите на название раздела Users;
  2. Нажмите кнопку Create New в правом верхнем углу:

  3. Заполните обязательные поля:

    • Username: имя пользователя;
    • Email: email адрес пользователя;
    • First Name: имя;
    • Last Name: фамилия;
    • Password: пароль (минимум 8 символов, должен содержать буквы разного регистра и цифры);
  4. При необходимости выберите значение Yesв строке Administrator для предоставления прав администратора;
  5. Нажмите Create User:

Создание локации

Что такое Location

Location - это логическая группировка нод по географическому расположению или назначению. Используется для организации серверов, например: "EU", "US", "Asia", "Production", "Testing". Пользователи не видят локации напрямую, это административный инструмент.

  1. В левом меню выберите Locations;
  2. Нажмите кнопку Create New в правом верхнем углу:

  3. Заполните поля:

    • Short Code: короткий код локации (например, "US1", "EU1");
    • Description: описание локации (например, "Датацентр в США");
  4. Нажмите Create:

Создание ноды

Что такое Node (нода)

Node - это физический или виртуальный сервер, на котором запускаются игровые серверы через Wings. Каждая нода имеет собственные ресурсы (CPU, RAM, диск) и может обслуживать несколько игровых серверов одновременно.

Подготовка перед созданием ноды

Перед созданием ноды убедитесь, что:

  • Docker установлен на сервере (предустановлен в образах HOSTKEY);
  • Есть IP-адрес или доменное имя для ноды;
  • Порты 8080 (Wings API) и 2022 (SFTP) будут открыты в файерволе.

Создание ноды в Panel

  1. В левом меню админ-панели выберите Nodes;

  2. Нажмите кнопку Create New в правом верхнем углу:

  3. Заполните основные настройки:

    • Name: уникальное имя ноды (например, hostkey-us-node1);
    • Location: выберите созданную ранее локацию;
    • Public: установите галочку, если нода должна быть видна пользователям;
    • FQDN: укажите доменное имя панели (например, pterodactyl50514.hostkey.in) или IP-адрес;
    • Communicate Over SSL: установите галочку, если Panel использует HTTPS;
    • Behind Proxy: оставьте выключенным, если нода не находится за прокси.
  4. Настройте конфигурацию ресурсов:

    • Daemon Server File Directory: /var/lib/pterodactyl/volumes (не изменяйте);
    • Total Memory: укажите доступную RAM в MB (например, 4608 для 6GB сервера с учетом резерва);
    • Memory Over-Allocation: укажите 0 (без перевыделения);
    • Total Disk Space: укажите доступное место на диске в MB (например, 102400 для 120GB диска с учетом резерва);
    • Disk Over-Allocation: укажите 0 (без перевыделения);
    • Daemon Port: 8080 (оставьте по умолчанию);
    • Daemon SFTP Port: 2022 (оставьте по умолчанию).

  5. Нажмите кнопку Create Node.

Важно при использовании HTTPS

Если Panel работает по HTTPS, то в поле FQDN необходимо указать доменное имя, а не IP-адрес. При указании IP-адреса с включенным SSL появится ошибка валидации.

Пример настроек для конфигурации "все-в-одном" (4 vCore / 6GB RAM / 120GB SSD)

    Name: hostkey-us-node1
    Location: US1
    Public: ☑
    FQDN: pterodactyl50514.hostkey.in
    Communicate Over SSL: ☑
    Behind Proxy: ☐

    Total Memory: 4608 MB (оставляем 1.5GB для системы)
    Memory Over-Allocation: 0
    Total Disk Space: 102400 MB (оставляем 20GB для системы)
    Disk Over-Allocation: 0

Настройка аллокаций (Allocations)

После создания ноды необходимо настроить аллокации - это комбинации IP-адресов и портов, которые будут доступны для назначения игровым серверам.

  1. После создания ноды автоматически откроется её страница. Перейдите на вкладку Allocation;

  2. В разделе Assign New Allocations (справа) заполните поля:

    • IP Address: введите IP-адрес сервера;
    • IP Alias: укажите описание (например, Main IP) или оставьте пустым;
    • Ports: укажите диапазон портов (например, 25565-25570 для Minecraft серверов).
  3. Нажмите зеленую кнопку Submit:

  4. Созданные аллокации появятся в таблице Existing Allocations (слева). Каждая строка представляет собой отдельную комбинацию IP:порт, которую можно назначить игровому серверу.

Примечание

Без настройки аллокаций вы не сможете создавать серверы на этой ноде. Необходимо добавить хотя бы один IP-адрес с портами.

Рекомендации по портам

  • Minecraft: 25565-25570 (стандартный порт 25565);
  • CS2/CS:GO: 27015-27020 (стандартный порт 27015);
  • Rust: 28015-28020 (стандартный порт 28015);
  • Valheim: 2456-2460 (стандартный порт 2456).

Установка Wings

Критично для работы

После создания ноды и настройки аллокаций необходимо установить Wings на сервере. Без Wings нода будет показывать статус Offline и не сможет запускать игровые серверы.

Подключитесь к серверу по SSH и выполните команды:

Создайте директорию для конфигурации:

mkdir -p /etc/pterodactyl
Скачайте Wings:

curl -L -o /usr/local/bin/wings "https://github.com/pterodactyl/wings/releases/latest/download/wings_linux_amd64"
Дайте права на выполнение:

chmod u+x /usr/local/bin/wings
Проверьте установку:

wings version

Должна отобразиться версия Wings (например, wings vv1.12.1).

Настройка Wings через Auto-Deploy (рекомендуется)

  1. В админ-панели перейдите на вкладку Configuration созданной ноды;

  2. В разделе Auto-Deploy (справа) нажмите кнопку Generate Token:

  3. Скопируйте сгенерированную команду. Она будет выглядеть примерно так:

        cd /etc/pterodactyl && wings configure --panel-url https://ваш-домен.com --token ТОКЕН --node 1
    

  4. Выполните скопированную команду на сервере:

        cd /etc/pterodactyl && wings configure --panel-url https://pterodactyl50514.hostkey.in --token ТОКЕН --node 1
    

    Должно появиться сообщение: Successfully configured wings.

  5. Проверьте созданную конфигурацию:

        cat /etc/pterodactyl/config.yml
    

Создание systemd сервиса

Создайте systemd сервис для автоматического запуска Wings:

cat > /etc/systemd/system/wings.service <<'EOF'
[Unit]
Description=Pterodactyl Wings Daemon
After=docker.service
Requires=docker.service
PartOf=docker.service

[Service]
User=root
WorkingDirectory=/etc/pterodactyl
LimitNOFILE=4096
PIDFile=/var/run/wings/daemon.pid
ExecStart=/usr/local/bin/wings
Restart=on-failure
StartLimitInterval=180
StartLimitBurst=30
RestartSec=5s

[Install]
WantedBy=multi-user.target
EOF

Запуск Wings

Перезагрузите конфигурацию systemd

systemctl daemon-reload
Включите автозапуск и запустите Wings

systemctl enable --now wings
Проверьте статус

systemctl status wings

Должен отображаться статус Active: active (running).

Проверка работы

Проверьте логи Wings:

journalctl -u wings -n 50

В логах должны быть сообщения:

  • fetching list of servers from API - Wings подключился к Panel;
  • configuring internal webserver - веб-сервер Wings запущен;
  • sftp server listening for connections - SFTP сервер работает.

Проверьте создание директории для серверов:

ls -la /var/lib/pterodactyl/volumes/

Проверка статуса в админ-панели

  1. Откройте админ-панель: https://ваш-домен.com/admin;
  2. Перейдите: Admin → Nodes → ваша нода;
  3. Обновите страницу (F5);
  4. Справа вверху должен отображаться зеленый индикатор статуса Online;
  5. На вкладке About должна отображаться информация о ресурсах (CPU, RAM, Disk).

Если нода показывает статус Online

Нода полностью настроена и готова к созданию игровых серверов!

Устранение проблем

Нода показывает статус Offline

Проверьте статус Wings:

systemctl status wings

Если Wings не запущен, запустите его:

systemctl start wings

Проверьте логи на наличие ошибок:

journalctl -u wings -n 100

Типичные проблемы:

  1. Wings не может подключиться к Panel:

    • Проверьте URL панели в конфигурации: cat /etc/pterodactyl/config.yml | grep remote;
    • Убедитесь, что Panel доступен: curl -I https://ваш-домен.com.
  2. Порт 8080 закрыт файерволом:

    • Проверьте порт: netstat -tulpn | grep 8080;
    • Откройте порт: ufw allow 8080/tcp.
  3. Проблемы с SSL:

    • Если Panel использует HTTPS, Wings также должен работать с SSL;
    • Проверьте настройки SSL в /etc/pterodactyl/config.yml.

Ручная настройка (альтернативный метод)

Если Auto-Deploy не работает, можно настроить Wings вручную:

  1. В админ-панели перейдите на вкладку Configuration ноды;
  2. Скопируйте содержимое конфигурационного файла из текстового поля слева;
  3. На сервере создайте файл конфигурации:

    nano /etc/pterodactyl/config.yml
    

  4. Вставьте скопированную конфигурацию и сохраните (Ctrl+X, затем Y, затем Enter);

  5. Перезапустите Wings: systemctl restart wings;
  6. Проверьте статус: systemctl status wings.

Создание неста и добавление яйца

Создание неста

  1. В левом меню выберите раздел Nests;
  2. Нажмите кнопку Create New в правом верхнем углу:

  3. Заполните поля:

    • Name: название неста (например, "Minecraft");
    • Description: описание неста;
  4. Нажмите Save:

Скачайте готовое яйцо

  1. Откройте сайт https://pelican-eggs.github.io/;

  2. Найдите нужную игру:

    • В разделе Game Eggs выберите категорию (например, Minecraft);
    • Найдите нужный тип сервера (например, Paper, Vanilla, Forge);
  3. Нажмите на название сервера, чтобы открыть страницу на GitHub;

  4. Найдите файл egg-название.json (например, egg-paper.json);

  5. Нажмите на файл, затем кнопку Raw в правом верхнем углу;

  6. Сохраните файл (Ctrl+S или правой кнопкой → Сохранить как).

Популярные яйца

Импортируйте яйцо в панель

  1. В админ-панели перейдите в раздел Nests;

  2. Нажмите кнопку Import Egg в правом верхнем углу:

  3. Нажмите Choose File и выберите скачанный .json файл;

  4. Нажмите Import:

Яйцо будет импортировано со всеми настройками, Docker образами и переменными.

Проверка импортированного яйца

  1. В списке яиц найдите импортированное (например, Paper);

  2. Нажмите на него для просмотра настроек;

  3. Убедитесь, что заполнены:

    • Docker Images: список доступных образов;
    • Install Script: скрипт установки сервера;
    • Variables: переменные окружения (версия, настройки).

Создание сервера

  1. В левом меню выберите Servers;

  2. Нажмите кнопку Create New в правом верхнем углу:

  3. Заполните форму создания:

Core Details:

  • Server Name: имя сервера (например, Test Minecraft Server);
  • Server Owner: выберите пользователя-владельца из списка;
  • Server Description: описание (необязательно);
  • Start Server when Installed: оставьте галочку включенной.

Allocation Management:

  • Node: выберите созданную ноду;
  • Default Allocation: выберите :порт из списка;
  • Additional Allocations: оставьте пустым.

Application Feature Limits:

  • Database Limit: 0;
  • Allocation Limit: 0;
  • Backup Limit: 0.

Resource Management:

  • CPU Limit: 0 (без ограничений);
  • Memory: 2048 MiB (2GB для начала);
  • Swap: 0 MiB;
  • Disk Space: 5120 MiB (5GB);
  • Block IO Weight: 500;
  • Enable OOM Killer: оставьте выключенным.

Nest Configuration:

  • Nest: Minecraft;
  • Egg: Paper (не Sponge!);
  • Docker Image: Java 21;
  • Service Variables: оставьте значения по умолчанию.

  • Нажмите Create Server внизу страницы;

  • Дождитесь завершения установки (статус Installing сменится на Offline):

Запуск и настройка сервера

  1. После установки откройте сервер из списка (AdminServers):

  2. Перейдите в пользовательскую панель (без /admin), войдите как владелец сервера;

  3. Нажмите кнопку Start:

  4. При первом запуске появится окно принятия лицензии:

  5. Нажмите I Accept для принятия Minecraft EULA;

  6. Дождитесь запуска сервера (статус сменится на Running):

Проверка работоспособности

Откройте в браузере (замените IP на свой):

https://api.mcsrvstat.us/3/<IP-адрес>:25565
Если в ответе "online": true - сервер работает и доступен игрокам.

Адрес для подключения:

<IP-адрес>:25565

Примечание

Подробная информация по основным настройкам Pterodactyl содержится в документации разработчиков.

Заказ сервера Pterodactyl с помощью API

Для установки данного ПО с использованием API следуйте этой инструкции.

question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×