Панель управления Pterodactyl¶
В этой статье
- Pterodactyl. Основные возможности
- Особенности сборки
- Начало работы после развертывания Pterodactyl
- Создание пользователя
- Создание локации
- Создание ноды
- Настройка аллокаций (Allocations)
- Настройка конфигурации ноды
- Создание неста и добавление яйца
- Создание сервера
- Запуск сервера
- Заказ сервера Pterodactyl с помощью API
Информация
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 |
---|
Основные компоненты системы:¶
Компонент | Назначение |
---|---|
Панель | Веб-интерфейс управления (PHP/Laravel) |
Wings | Демон для управления серверами на нодах (Go) |
База данных | Хранение конфигураций и данных пользователей |
Конфигурационные файлы¶
Путь | Назначение |
---|---|
/var/www/pterodactyl/.env | Основные настройки панели |
/etc/pterodactyl/config.yml | Конфигурация Wings на ноде |
/var/log/pterodactyl/ | Логи панели |
/srv/daemon-data/ | Данные игровых серверов |
-
Центральная панель управления:
Устанавливается на главный сервер (/var/www/pterodactyl
) -
Ноды (Nodes):
Физические/виртуальные серверы, на которых запускаются игровые серверы -
Демон Wings:
Устанавливается на каждой ноде, управляет Docker-контейнерами -
База данных:
Хранит конфигурации, пользователей, статистику (/var/lib/mysql/pterodactyl
)
Системные требования¶
Для панели управления¶
- Процессор: 2+ ядра
- Память: 2+ GB RAM
- Диск: 20+ GB SSD
- ОС: Ubuntu 20.04/22.04, CentOS ⅞
- ПО: PHP 8.1+, MySQL 8.0+, Redis, Nginx/Apache
Для нод (на 5-10 игровых серверов)¶
- Процессор: 4+ ядер
- Память: 8+ GB RAM
- Диск: 50+ GB SSD
- ОС: Любой Linux с поддержкой Docker
- Порты: 8080 (Wings), 2022 (SFTP), игровые порты (27015 и др.)
Начало работы после развертывания Pterodactyl¶
После оплаты заказа на указанную при регистрации электронную почту придет уведомление о готовности сервера к работе. В нем будет указан IP-адрес VPS, а также логин и пароль для подключения. Управление оборудованием клиенты нашей компании осуществляют в панели управления серверами и API — Invapi.
Данные для авторизации, которые можно найти или во вкладке Информация >> Тэги панели управления сервером или в присланном e-mail:
- Ссылка: в теге webpanel. Для доступа к панели администратора добавьте
/admin
к основной ссылке; - Логин и Пароль приходят в письме на вашу электронную почту при готовности сервера к работе после развертывания ПО.
Первая авторизация¶
- Откройте веб-браузер и перейдите по адресу вашей панели Pterodactyl
-
Нажмите
Login: -
После успешной авторизации вы попадете на главную страницу панели.
-
Для перехода в панель администратора нажмите на кнопку
:
Создание пользователя¶
- В левом меню панели администратора нажмите на название раздела Users;
-
Нажмите кнопку
Create Newв правом верхнем углу: -
Заполните обязательные поля:
- Username: имя пользователя
- Email: email адрес пользователя
- First Name: имя
- Last Name: фамилия
- Password: пароль (минимум 8 символов, должен содержать буквы разного регистра и цифры)
- При необходимости выберите значение
Yes
в строке Administrator для предоставления прав администратора -
Нажмите
Create User:
Создание локации¶
- В левом меню выберите Locations;
-
Нажмите кнопку
Create Newв правом верхнем углу: -
Заполните поля:
- Short Code: короткий код локации (например, "US1", "EU1")
- Description: описание локации (например, "Датацентр в США")
-
Нажмите
Create:
Создание ноды¶
- В левом меню выберите Nodes;
-
Нажмите кнопку
Create Newв правом верхнем углу: -
Заполните основные настройки:
- Name: имя ноды (например,
hostkey-node1
); - Location: выберите созданную ранее локацию;
- Public: установите, если нода должна быть видна пользователям;
- FQDN: полное доменное имя сервера (например, node1.example.com);
- Communicate Over SSL: включите для HTTPS соединения;
- Behind Proxy: включите, если нода находится за прокси.
- Name: имя ноды (например,
-
Настройте конфигурацию:
- Daemon Server File Directory:
/var/lib/pterodactyl/volumes
; - Total Memory: общее количество RAM в MB;
- Memory Over-Allocation: процент перевыделения памяти;
- Total Disk Space: общее дисковое пространство в MB;
- Disk Over-Allocation: процент перевыделения диска:
- Daemon Server File Directory:
-
Нажмите кнопку
Create Node.
Настройка аллокаций (Allocations)¶
После создания ноды необходимо настроить аллокации - это IP адреса и порты, которые будут доступны для серверов:
- Перейдите на вкладку Allocation для настройки IP-адресов и портов;
- В разделе Assign New Allocations (справа) заполните поля:
- IP Address: введите IP адрес сервера (например, 192.168.1.7 или внешний IP);
- IP Alias: псевдоним для IP адреса (необязательно, поле с placeholder "alias");
- Ports: укажите порты или диапазон портов (например,
25565
для Minecraft или25565-25575
для нескольких серверов).
-
Нажмите зеленую кнопку
Submit; -
Созданные аллокации появятся в таблице Existing Allocations (слева).
Примечание
Без настройки аллокаций вы не сможете создавать серверы на этой ноде.
Настройка конфигурации ноды¶
Способ 1: Автоматическая настройка (рекомендуется)¶
- Перейдите на вкладку Configuration;
-
В разделе Auto-Deploy справа нажмите кнопку
Generate Token^ -
Скопируйте сгенерированную команду (она будет содержать токен для автоматической настройки):
-
Выполните эту команду на сервере ноды - она автоматически обновит конфигурацию и настроит демон.
Способ 2: Ручная настройка¶
- Перейдите на вкладку Configuration;
- Скопируйте содержимое конфигурационного файла из текстового поля слева;
- На сервере откройте существующий файл конфигурации для редактирования:
Ctrl+X
, затем Y
, затем Enter
). Проверка и перезапуск¶
-
Убедитесь, что конфигурация обновлена правильно:
-
Перезапустите демон Pterodactyl для применения новых настроек:
-
Проверьте статус демона:
Создание неста и добавление яйца¶
Создание неста¶
- В левом меню выберите раздел Nests;
-
Нажмите кнопку
Create Newв правом верхнем углу: -
Заполните поля:
- Name: название неста (например, "Minecraft");
- Description: описание неста;
-
Нажмите
Create Nest:
Добавление яйца¶
- В разделе Nests найдите созданный на прошлом этапе и нажмите на него;
-
Нажмите кнопку
New Egg: -
Заполните основную информацию:
- Name: название яйца (например, "Paper Minecraft");
- Description: описание;
- Author: автор яйца;
- Docker Image: образ Docker (например,
ghcr.io/pterodactyl/yolks:java_17
).
- Настройте скрипт установки:
- Install Script: скрипт для установки сервера;
- Install Container: контейнер для установки;
- Install Entrypoint: точка входа для установки;
- Настройте переменные окружения для Minecraft Paper:
- SERVER_JARFILE: paper.jar;
- VANILLA_VERSION: latest;
- BUILD_NUMBER: latest.
-
Нажмите
Create Egg:
Примечание: Для Paper Minecraft рекомендуется использовать готовое яйцо из официального репозитория Pterodactyl.
Как использовать готовое яйцо:¶
-
Скачайте готовое яйцо Paper:
- Перейдите на сайт https://pelican-eggs.github.io/ или GitHub репозиторий pelican-eggs;
- Найдите раздел Minecraft и выберите Paper;
- Скачайте файл
.json
с конфигурацией яйца.
-
Импортируйте яйцо в панель:
- В админ-панели перейдите в раздел Nests;
- Выберите нужное гнездо (например, Minecraft);
- Нажмите кнопку
Import Egg; - Выберите скачанный
.json
файл; - Нажмите
Import.
Создание сервера¶
- В левом меню выберите Servers;
-
Нажмите кнопку
Create Newв правом верхнем углу: -
Заполните основную информацию:
- Server Name: имя сервера (например, "My Minecraft Server");
- Server Owner: выберите владельца сервера из списка пользователей;
- Server Description: описание сервера.
- Настройте лимиты ресурсов:
- Memory: лимит RAM в MB (например, 2048);
- Swap: лимит swap в MB;
- Disk Space: лимит дискового пространства в MB;
- Block IO Weight: приоритет ввода/вывода (100-1000);
- CPU Limit: лимит CPU в процентах.
- Выберите конфигурацию:
- Node: выберите ноду, на которой будет работать сервер;
- Default Allocation: основной IP и порт;
- Additional Allocations: дополнительные порты при необходимости.
- Настройте игровые параметры:
- Nest: выберите "Minecraft";
- Egg: выберите "Paper";
- Docker Image: оставьте по умолчанию.
- Настройте переменные сервера:
- Server Jar File: paper.jar;
- Minecraft Version: укажите версию (например, "1.20.1");
- Build Number: latest.
-
Нажмите
Create Server:
Запуск сервера¶
- Перейдите в раздел Servers;
- Найдите созданный сервер и нажмите на него;
- На странице сервера найдите кнопку
Startи нажмите на неё; - Дождитесь загрузки сервера - статус изменится на Running;
- В консоли сервера вы увидите процесс загрузки Minecraft сервера.
Примечание
Подробная информация по основным настройкам Pterodactyl содержится в документации разработчиков.
Заказ сервера Pterodactyl с помощью API¶
Для установки данного ПО с использованием API следуйте этой инструкции.