Pterodactyl
Панель игровых серверов на своем VPS. Pterodactyl выдает их другим людям: каждый сервер в отдельном контейнере, со своими лимитами по памяти, диску и процессору, с веб-консолью и файловым менеджером вместо SSH. Развернули версию 1.15.1 на одной машине, подняли два сервера Minecraft и замерили, во что это обходится.
Вердикт
- раздать серверы сообществу или клану, не пуская людей в SSH
- держать несколько игр на одной машине с лимитами на каждую
- сделать свой игровой хостинг: есть узлы, квоты и API
- одному человеку с одним Minecraft для друзей
- тем, кто не хочет обслуживать две части продукта
- дешевому VPS на OpenVZ или LXC: там демон не работает
Что это и какую задачу решает
Pterodactyl - это не панель, чтобы вам было удобно запускать игру. Это панель, чтобы выдавать игровые серверы другим людям. Разница видна в устройстве: учетные записи, подпользователи, выделенные адреса и порты, лимиты на каждый сервер.
Человек, которому вы отдали сервер, получает ссылку и логин. Внутри - консоль, файловый менеджер, SFTP, бэкапы, расписания и своя база данных. Доступа к машине у него нет.
Игры подключаются через eggs - рецепты установки и запуска. В поставке идут Minecraft, Rust, Terraria, TeamSpeak, Mumble, Team Fortress 2, CS:GO, Garry's Mod и ARK; сообщество добавило Factorio, FiveM, SA:MP и десятки других.
Что этим закрывают на практике: сервер для клана или Discord-сообщества, несколько игр на одной машине, кружок или лагерь, где ученикам выдают серверы без root. Отдельный сценарий - свой игровой хостинг: в ноябре 2024 ISPsystem выпустила модуль интеграции BILLmanager с Pterodactyl, чтобы провайдеры продавали игровые серверы автоматически.
Чем отличается от платных аналогов
В этой нише платят за саму панель, и это главный довод в пользу Pterodactyl.
| Параметр | Pterodactyl | Multicraft | TCAdmin 3 |
|---|---|---|---|
| Цена панели | 0, лицензия MIT | до 25 серверов бесплатно, дальше 1,49 евро за сервер в месяц | 7,95 $/мес за 4 услуги, 15,95 $/мес без лимита |
| Цена на 50 серверов | 0 | 74,50 евро в месяц | 15,95 $/мес на каждую машину |
| Изоляция серверов | отдельный контейнер на каждый | процессы рядом | процессы рядом |
| Лимиты на сервер | CPU, память, диск, ввод-вывод | память и диск | память и диск |
| Бэкапы в S3 | родные | нет | нет |
| Windows-игры | нет, только Linux и Docker | есть | есть |
Отдельно стоит WISP - облако на той же идее за 5-10 $ за узел в месяц. Документация Pterodactyl сама отправляет к нему тех, кому установка кажется сложной, и совет по делу: WISP продает отсутствие эксплуатации, а не функции.
Два продукта вместо одного
Главный факт установки, который легко пропустить.
Pterodactyl состоит из двух частей. Panel - это веб-интерфейс и API на PHP 8.3 и Laravel 12 с фронтендом на React, хранит все в MariaDB, кэш и очереди держит в Redis. Wings - демон на Go, который живет на самой машине и управляет Docker: он создает контейнеры игровых серверов, отдает консоль, SFTP и бэкапы.
Официальный docker-compose.example.yml из репозитория поднимает только панель. Wings он не ставит, и это не недосмотр: демон должен управлять Docker на хосте, а не жить внутри контейнера.
Отсюда главная ловушка первого запуска: панель открывается, работает, а создать игровой сервер физически некому. Человек видит пустой список и решает, что продукт сломан.
Как они связываются. В панели создается узел с адресом машины, панель выдает для него конфигурацию с токеном, и эта конфигурация кладется на ту же машину для Wings. После этого демон аутентифицируется в панели и начинает принимать команды.
Минимальная конфигурация
Апстрим требований к железу не публикует вовсе - ни для панели, ни для демона.
| Официальный минимум RAM | не заявлен |
| Панель и демон в простое | 830 МБ на всю машину |
| Один сервер Minecraft | +523 МиБ |
| Два сервера Minecraft | 1,88 ГБ на всю машину |
| Образы на диске | 1,9 ГБ минимум |
| Рекомендуем тариф | CPU4-RAM8-DISK100 - 1100 руб/мес |
Почему не младше. Сама панель дешевая, память забирают игры. В CPU2-RAM4-DISK50 поместятся панель и один-два пустых сервера, но ровно до прихода живых игроков. Продукт существует ради нескольких серверов, поэтому берем CPU4-RAM8-DISK100: на нем два сервера оставляют 6 ГБ свободными.
Нужна настоящая виртуализация. Wings работает через Docker, и апстрим прямо пишет, что на OpenVZ, Virtuozzo и LXC он, скорее всего, не заведется. Проверяется одной командой systemd-detect-virt до установки: на нашей машине она ответила kvm.
В маркетплейсе Fatmetal
Не хотите ставить руками?
Этот стек есть в маркетплейсе Fatmetal - можно не повторять установку из этого разбора вручную. Заказываете сервер, за пару минут получаете панель и демон уже связанными между собой, валидный TLS и файл с доступами.
Рекомендуемая конфигурация:
4 vCPU · 8 ГБ RAM · 100 ГБ NVMe от 990 ₽/мес
Развертывание на Fatmetal Cloud Server
Ubuntu 24.04, Docker ставим сами, панель и демон - по очереди.
Поднять панель
За основу берем пример апстрима, но закрепляем версии и отдаем порт только на localhost - наружу смотрит обратный прокси.
mkdir ~/pterodactyl && cd ~/pterodactyl curl -fsSLO https://raw.githubusercontent.com/pterodactyl/panel/v1.15.1/docker-compose.example.yml # правим: ghcr.io/pterodactyl/panel:v1.15.1, mariadb:11.4, redis:7.4-alpine, # ports: "127.0.0.1:8080:80", пароли базы вместо CHANGE_ME docker compose up -dМиграции и каталог игр панель засевает сама. Первый ответ по HTTP пришел через 50 секунд после старта.
Завести администратора и узел
Браузер для этого не нужен, все делается командами панели.
docker compose exec panel php artisan p:user:make --admin=1 docker compose exec panel php artisan p:location:make --short=stand1 docker compose exec panel php artisan p:node:make --scheme=https --proxy=1 \ --daemonListeningPort=8443 --daemonSFTPPort=2022Поставить Wings
Бинарь, конфигурация из панели вместе с токеном узла и systemd-юнит.
curl -fsSL -o /usr/local/bin/wings \ https://github.com/pterodactyl/wings/releases/download/v1.13.3/wings_linux_amd64 chmod 755 /usr/local/bin/wings docker compose exec panel php artisan p:node:configuration 1 > /etc/pterodactyl/config.yml systemctl enable --now wingsЗакрыть оба порта прокси
Панели нужен TLS на 443, демону - на 8443. Генератор конфигурации ставит Wings на
0.0.0.0:8443голым HTTP, то есть ровно туда, куда панель отправляет браузер по https. Мы перенесли демон на127.0.0.1:8081и отдали оба адреса Caddy.
Что измерили после запуска
Цифры с тестового CPU4-RAM8-DISK100, Ubuntu 24.04, Docker 29.8.2.
| Установка Docker | 44 с |
| Подъем панели целиком | 98 с |
| До первого ответа по HTTP | 50 с |
| Вся механика на чистой машине | 190 с |
| Панель, база и кэш в простое | 196,5 МиБ |
| Wings и прокси на хосте | 32,7 и 48,9 МиБ |
| Вся машина без игр | 830 МБ |
| Установка игрового сервера | 18 с, повторная 12 с |
| Первый старт Minecraft 26.3 | 37 с, из них генерация мира 9 с |
| Отклик панели | 71 мс |
| Диск после двух серверов | 5,5 ГБ из 96 |
Главное. Контрольная плоскость почти ничего не стоит - 830 МБ на всю машину. Платите вы за игры: каждый ванильный сервер Minecraft забирает около 520 МБ, и рост линейный. Планировать тариф надо под число серверов, а не под панель.
Цифру памяти нельзя переносить на другие панели напрямую. Сервер берет столько, сколько ему разрешили: штатный запуск Pterodactyl задает -Xms128M -XX:MaxRAMPercentage=95.0, и под другими флагами тот же Minecraft занимает вдвое больше.
Проверено на версии v1.15.1, октябрь 2026. На новых версиях результаты могут отличаться.
Где может сломаться
Три засады, на которые мы наткнулись при запуске. Первая останавливает всех.
Симптом. Пароль верный, а войти нельзя. В журналах панели при этом пусто.
Причина. Проверка reCAPTCHA включена по умолчанию, а обработчик ее отказа сам падает с ошибкой типа: FailedCaptcha::__construct(): Argument #2 ($domain) must be of type string, null given. Наружу уходит голая пятисотка вместо понятного сообщения.
Решение. Выключить проверку переменной RECAPTCHA_ENABLED=false, как описано в документации панели. После этого вход отдает 200.
Симптом. Сервер падает через четыре секунды после старта, панель показывает его выключенным.
Причина. Egg предлагает шесть образов Java и не связывает их с версией игры. Minecraft последней версии требует Java 25, а выбран был Java 21.
Решение. Сменить образ сервера на ghcr.io/pterodactyl/yolks:java_25. Правило простое: свежая игра - свежая Java.
Minecraft и EULA. Следом сервер снова покажется упавшим: ванильный Minecraft на первом старте пишет eula.txt и выходит. Надо поменять в файле eula=false на eula=true и запустить заново. Проверено на обоих серверах - это закономерность, а не случайность.
Документация отстает от релизов. Разделы на сайте помечены версией 1.12, тогда как актуальный релиз - 1.15.1. Инструкция по установке при этом рабочая, но соответствия версий ждать не стоит.
Безопасность и обновления
Продукт по назначению запускает чужой код на вашей машине, поэтому изоляция тут не украшение. Апстрим отдельно предупреждает: переводить сеть контейнеров в режим host нельзя, если на машине живут серверы других людей - это снимает всю защиту Docker.
Что закрыть до прода: сменить пароли базы из примера, задать APP_URL и TRUSTED_PROXIES, включить двухфакторную аутентификацию, вынести панель и демон за прокси с TLS. Файл .env панели с ключом приложения лежит в томе и его нельзя терять: с новым ключом не расшифруются токены узлов.
docker compose pull && docker compose up -d # панель
systemctl stop wings && curl -fsSL -o /usr/local/bin/wings ... && systemctl start wings
Бэкапы панель умеет сама, и это ее сильная сторона. Доступны два хранилища: локальное через демон и любое S3-совместимое - есть и AWS_ENDPOINT, и адресация через путь, то есть Amazon не обязателен.
Сколько весит копия. Бэкап пустого сервера Minecraft - 127,5 МБ за 11 секунд. Сам мир при этом занимает 2,4 МБ: объем копии задает движок игры, а не ваша карта. Поэтому под рост берите объектное хранилище, а не диск побольше.
Апстрим притормозил, и это надо знать до установки
Pterodactyl остается стандартом ниши: 9284 звезды, 2695 форков, 191 участник за одиннадцать лет, на нем работают коммерческие игровые хостинги. Но темп разработки упал: 10 коммитов за 90 дней, последний - 14 августа 2026. Ветка второй мажорной версии стоит с апреля 2022 года.
Разработка переехала в форк Pelican Panel: 100+ коммитов за те же 90 дней и свежий код в день нашей проверки. Ставить его сегодня рано - проект в бете и сменил лицензию на AGPL-3.0, - но держать в голове стоит.
Что это значит практически: продукт не исчезнет, он открыт по MIT и форкнут тысячи раз, а на нем держатся чужие бизнесы. Новых функций ждать не стоит, и через год правильным ответом может оказаться форк.
Связь с другими стеками
- Обратный прокси - Caddy или Nginx, и сразу на два адреса: панель и демон.
- Объектное хранилище - для бэкапов серверов, поддержка встроенная.
- Почтовый сервер - письма о заведении учетной записи и сбросе пароля; у нас сценарий проверен живым письмом.
- Биллинг - BILLmanager или WHMCS, если игровые серверы продаются клиентам.
Когда это НЕ ваш выбор
Вам нужен один Minecraft для себя и друзей
Вся многопользовательская машинерия окажется лишней, а обслуживать придется две части вместо одной. Для такой задачи есть панели попроще, в один контейнер.
Интерфейс нужен на русском
В поставке 1.15.1 только английская локализация, переключателя языка нет. Проверено на стенде: каталог языков панели содержит единственный пункт.
Игры под Windows
Pterodactyl построен на Linux и Docker. Если нужен игровой сервер под Windows, смотреть надо в сторону TCAdmin.
Вы не хотите администрировать
Обновлять придется панель, демон и Docker, а документация апстрима прямо отговаривает тех, кто не готов разбираться. Если это про вас, разумнее взять готовое облако или карточку из маркетплейса.
Частые вопросы
Можно поставить без Docker?
Панель - да, она ставится и на обычный веб-сервер с PHP. Демон - нет: он управляет именно Docker, и без него игровые серверы запускать нечем.
Хватит ли 4 ГБ памяти?
Для панели и одного пустого сервера хватит: контрольная плоскость занимает 830 МБ, сервер Minecraft - еще около 520 МБ. На нескольких серверах с живыми игроками запас кончится.
Сколько серверов влезет на одну машину?
На CPU4-RAM8-DISK100 два ванильных сервера Minecraft оставили 6 ГБ свободными. Считать надо по памяти, которую вы выдаете каждому серверу, а не по их числу.
Можно в продакшен?
Да, на нем работают коммерческие хостинги. До прода закройте панель и демон прокси с TLS, смените пароли базы, включите двухфакторную аутентификацию и не трогайте сетевой режим контейнеров.
Как делать бэкап?
Панель делает копии серверов сама, по кнопке или расписанию, и умеет складывать их в S3-совместимое хранилище. Отдельно бэкапьте базу панели и ее файл .env с ключом приложения.
Подойдет ли дешевый VPS?
Только с настоящей виртуализацией. На OpenVZ и LXC демон не запустится, потому что там не работает Docker. Проверяется командой systemd-detect-virt до установки.
Какие ограничения лицензии?
Лицензия MIT, коммерческое использование разрешено, в том числе продажа игровых серверов клиентам. Детектор GitHub показывает неопределенную лицензию из-за оформления файла, но в нем канонический текст MIT.
Итог
Pterodactyl берут не за удобство запуска игры, а за возможность раздать серверы людям и не пустить их на машину. За это он не просит ничего: панель бесплатна по MIT, тогда как Multicraft считает серверы, а TCAdmin - машины. Платите вы за память, которую занимают сами игры: 830 МБ на панель с демоном и примерно по 520 МБ на каждый ванильный сервер Minecraft. Цена установки - две части вместо одной, прокси на два порта и обязательная проверка виртуализации до старта.
Рекомендуемая конфигурация для установки:
4 vCPU · 8 ГБ RAM · 100 ГБ NVMe
Не хотите устанавливать вручную?
Запустите Pterodactyl на этой конфигурации автоматически - от 990 ₽/мес.
Этот стек у нас запущен на тарифе CPU4-RAM8-DISK100. Нашли баг в гайде - напишите, поправим в течение дня.