O Pterodactyl Panel
Pterodactyl to otwartoźródłowy panel do hostowania i administrowania serwerami gier (Minecraft, Rust, gry na silniku Source, serwery głosowe, boty). Każdy serwer działa we własnym kontenerze Docker, którym steruje demon Wings, a całością zarządzasz z poziomu interfejsu webowego: konsola, pliki, kopie zapasowe, konta użytkowników, limity zasobów.
Ta oferta instaluje na jednym VPS-ie z Linuksem panel (PHP, Nginx, MariaDB, Redis), phpMyAdmin, Dockera i Wings. Skrypt tworzy też lokalizację „main”, węzeł „Node-1” połączony z Wings oraz alokacje portów od 25565 do 25590, więc pierwszy serwer możesz utworzyć bez dodatkowej konfiguracji.
Jedna rzecz, o której warto wiedzieć przed zamówieniem: certyfikat HTTPS Let's Encrypt wymaga nazwy domeny. Skrypt instalacyjny czeka, aż podasz domenę i adres e-mail, a rekord DNS typu A będzie wskazywał na serwer. Procedurę opisujemy krok po kroku w szybkim starcie poniżej.
Co możesz zrobić z Pterodactyl Panel
Kompletny panel webowy
Panel obsługują Nginx i PHP-FPM, bazą jest MariaDB, a Redis odpowiada za cache, sesje i kolejkę zadań. Usługa systemd pteroq przetwarza kolejkę w tle.
Wings i Docker już zainstalowane
Docker i demon Wings są zainstalowane, a konfigurację węzła generuje panel w pliku /etc/pterodactyl/config.yml. Jeśli konfiguracja jest poprawna, Wings startuje jako usługa systemd.
Lokalny węzeł gotowy do pracy
Węzeł Node-1 jest zarejestrowany z około 80% pamięci RAM i miejsca na dysku w /var, portami 8080 (Wings) i 2022 (SFTP) oraz alokacjami od 25565 do 25590.
Automatyczny HTTPS Let's Encrypt
Certyfikat dla Twojej domeny jest pobierany przez certbota. Hook odnowienia przeładowuje Nginx i restartuje Wings przy każdym odnowieniu.
phpMyAdmin pod tą samą domeną
phpMyAdmin jest dostępny pod adresem /phpmyadmin, z dedykowanym kontem i losowo wygenerowanym hasłem. Przydaje się do podglądu bazy panelu oraz baz Twoich serwerów gier.
Dane dostępowe tworzone przy instalacji
Konto administratora panelu i konto phpMyAdmin dostają losowe hasła, zapisane w /tmp/credentials.txt (uprawnienia 600). Telemetria panelu jest wyłączona.
Pierwsze kroki z Pterodactyl Panel
Od zamówienia do produkcji w kilka minut.
- 1
Zamów VPS z zaznaczoną aplikacją
Wybierz VPS z Linuksem w Paryżu lub Frankfurcie i zaznacz Pterodactyl Panel w zakładce „Aplikacje”. Postaw na Ubuntu 22.04, Ubuntu 24.04 lub Debiana 12 oraz 4 GB RAM, jeśli planujesz serwery gier.
- 2
Połącz się i skieruj domenę na serwer
Po dostarczeniu serwera utwórz u rejestratora (zob. /web-domains) rekord A swojej subdomeny wskazujący na SERVER_IP, a następnie otwórz sesję SSH.
Bashssh root@SERVER_IP - 3
Podaj domenę i uruchom instalację
Skrypt /opt/install-pterodactyl.sh zatrzymuje się, dopóki DOMAIN i LE_EMAIL mają wartości przykładowe. Zmień je, uruchom skrypt ponownie, odczytaj dane logowania (użytkownik admin) i otwórz https://YOUR_DOMAIN. Policz się z kilkoma minutami, a z dłuższym czasem, jeśli propagacja DNS się opóźnia.
Bashnano /opt/install-pterodactyl.sh bash /opt/install-pterodactyl.sh cat /tmp/credentials.txt - 4
Zabezpiecz serwer przed produkcją
Skopiuj /tmp/credentials.txt poza serwer, zmień hasło administratora i włącz zaporę przepuszczającą SSH, HTTP(S), Wings (8080), SFTP (2022) oraz porty Twoich gier. Zaplanuj też kopie zapasowe bazy i katalogu /var/lib/pterodactyl/volumes.
Bashcp /tmp/credentials.txt /root/credentials.txt apt-get install -y ufw ufw allow 22/tcp && ufw allow 80/tcp && ufw allow 443/tcp ufw allow 8080/tcp && ufw allow 2022/tcp && ufw allow 25565:25590/tcp ufw enable
Zastosowania Pterodactyl Panel
Hosting serwerów Minecraft
Tworzysz wiele odizolowanych serwerów w kontenerach, z limitami pamięci i dysku dla każdego z nich, a każdemu graczowi lub klientowi dajesz ograniczony dostęp tylko do jego serwera.
Społeczność lub klan graczy
Zbierz serwery gier i boty Discorda w jednym interfejsie. Podużytkownicy mogą uruchamiać, zatrzymywać i edytować pliki bez dostępu przez SSH.
Odsprzedaż serwerów gier
Mała firma może oferować klientom serwery gier, a każdy z nich dostaje własne konto w panelu, konsolę i dostęp SFTP.
Środowisko testowe przed większym wdrożeniem
Przetestuj panel, eggi i limity zasobów na jednym VPS-ie, a gdy obciążenie wzrośnie, dodaj kolejne węzły Wings albo przejdź na [serwer dedykowany do gier](/serveur-dedie-gaming).
Najczęstsze pytania o Pterodactyl Panel
Tak. Certyfikat Let's Encrypt jest wydawany dla domeny, a węzeł Wings jest zadeklarowany pod tą nazwą. Przed uruchomieniem skryptu utwórz rekord A wskazujący na adres IP VPS-a. Domenę zarejestrujesz na stronie [domen](/web-domains).
Więcej o Pterodactyl Panel
Czego skrypt oczekuje od Ciebie
Skrypt uruchamia cloud-init przy pierwszym starcie systemu. Jeśli DOMAIN i LE_EMAIL nie zostały zmienione, wyświetla komunikat i kończy działanie, nie instalując nic poza podstawowymi pakietami. Wystarczy wtedy edytować plik i uruchomić skrypt ponownie poleceniem bash /opt/install-pterodactyl.sh.
Po starcie skrypt czeka do około 10 minut, aż DNS Twojej domeny zacznie wskazywać na publiczny adres IP serwera, a następnie pięciokrotnie próbuje uzyskać certyfikat. Port 80 musi więc być osiągalny. Skrypt wymaga także PHP 8.1 lub nowszego: przewidziano go dla Ubuntu 22.04, Ubuntu 24.04 i Debiana 12. Na innej wersji systemu zatrzyma się, jeśli PHP będzie zbyt stare.
Napisano go z myślą o świeżym serwerze. Nie uruchamiaj go ponownie na maszynie, na której panel został już poprawnie zainstalowany.
Gdzie co się znajduje
- Panel: /var/www/pterodactyl (plik konfiguracyjny .env w katalogu głównym)
- Konfiguracja Nginx: /etc/nginx/sites-available/pterodactyl.conf
- Konfiguracja Wings: /etc/pterodactyl/config.yml
- Dane serwerów gier: /var/lib/pterodactyl/volumes
- Usługi:
pteroq,wings,nginx,mariadb,redis-server,docker
Plik /tmp/credentials.txt może zniknąć po restarcie, ponieważ /tmp bywa czyszczony. Skopiuj go od razu przy pierwszym logowaniu.
Kopie zapasowe
Liczą się trzy elementy: baza MariaDB panelu (o nazwie panel), plik .env panelu (zawiera klucz aplikacji) i katalog z wolumenami serwerów gier. Codzienny mysqldump oraz kopia tych ścieżek na zewnętrzny nośnik zabezpieczają większość potrzeb.
Bashmysqldump panel > /root/panel-$(date +%F).sql cp /var/www/pterodactyl/.env /root/pterodactyl.env
phpMyAdmin i zapora sieciowa
Konto pma_admin ma pełne uprawnienia w MariaDB. Jeśli nie potrzebujesz phpMyAdmin przez cały czas, ogranicz dostęp do niego według adresu IP w konfiguracji Nginx albo usuń dowiązanie /var/www/pterodactyl/public/phpmyadmin.
Porty gier publikowane przez Dockera mogą omijać reguły ufw. Sprawdź więc po konfiguracji, z zewnątrz, które porty rzeczywiście odpowiadają. Jeśli potrzebujesz ochrony przed atakami wolumetrycznymi, zobacz VPS anty-DDoS.