Ga naar inhoud

Pterodactyl Control Panel

In dit artikel

Informatie

Pterodactyl is een gratis open-source game server management panel. Het maakt centraal beheer mogelijk van servers voor Minecraft, CS2, Rust en 50+ andere games via een webinterface.

Pterodactyl. Belangrijkste functies

Pterodactyl is een moderne oplossing voor het beheren van game servers die het volgende combineert:

  • Ondersteuning voor 50+ games: Biedt kant-en-klare templates voor de snelle installatie van populaire game servers. Configureert software, dependencies en opstartparameters automatisch, ondersteunt selectie van gameversies en het toevoegen van aangepaste templates.
  • Precieze resourcebeheer: Controleert RAM, CPU, schijfruimte en prioriteitsverdeling tussen servers. Voorkomt overbelasting, wijst resources toe via quota's en gebruikt SWAP-geheugen voor stabiliteit.
  • Betrouwbare automatische back-ups: Zorgt voor flexibele geplande back-ups met dataselectie (volledige server of belangrijke bestanden). Slaat back-ups lokaal of in de cloud (S3, FTP, GDrive) op met encryptie en instant herstel.
  • Efficiënte multi-server capaciteit: Draait elke server in een geïsoleerde Docker-container. Verdeelt de belasting automatisch over nodes, wijst poorten zonder conflicten toe en maakt het groeperen van gerelateerde servers mogelijk.
  • Flexibele multi-user toegang: Beheert permissies via een rolgebaseerd model (voorinstellingen + aangepaste rollen) met 50+ granulaire permissies. Ondersteunt tijdelijke toegang, actie-auditing en tweestapsverificatie.
  • Real-time management console: Biedt volledige controle via een webinterface met een interactieve terminal (vergelijkbaar met SSH). Inclusief kleurformulering, commandohistorie, snelle actieknoppen en event-notificaties.
  • Real-time statistieken monitoring: Toont grafieken van het resourcegebruik (CPU, RAM, schijf, netwerk) en game-metrieken (online spelers, TPS, ping). Maakt het mogelijk om aangepaste dashboards te maken, alerts te configureren en gegevens naar CSV te exporteren.
  • Vereenvoudigd mod/plugin beheer: Biedt een ingebouwde store voor automatische mod-installatie, versie- en dependencybeheer. Inclusief een visuele configuratie-editor met syntax highlighting en update-notificaties.
  • Automatische updates: Zorgt voor een ononderbroken systeemwerking. Update game servers volgens schema met testmodus en rollback bij fouten. Update het control panel met één commando (php artisan p:upgrade), waarbij compatibiliteit wordt gecontroleerd en de database wordt gemigreerd zonder gegevensverlies. Auto-updates Wings daemon, wat zorgt voor compatibiliteit met verschillende Linux-distributies.

Implementatiefuncties

ID Softwarenaam Compatibel OS VM BM VGPU GPU Min CPU (Kernen) Min RAM (GB) Min HDD/SSD (GB) Aangepast Domein Actief
326 Pterodactyl Ubuntu 22.04 + + + + 1 1 - Nee BESTELLEN

Belangrijkste systeemcomponenten:

Component Doel
Panel Web management interface (PHP/Laravel). Biedt het admin panel en de user interface voor serverbeheer
Wings Daemon voor de fysieke start van game servers (Go). Wordt apart geïnstalleerd op machines waar game servers zullen draaien
Database MariaDB voor het opslaan van configuraties, gebruikers, servers en instellingen
Docker Containerisatieplatform, vereist voor de werking van Wings en isolatie van game servers

Configuratiebestanden

Pad Doel
/var/www/pterodactyl/.env Belangrijkste Panel instellingen: databaseverbinding, Redis, APP_URL, APP_KEY
/var/www/pterodactyl/storage/logs/laravel.log Logs van de Panel werking (applicatiefouten, verzoeken)
/var/log/nginx/pterodactyl.app-error.log NGINX webserver logs voor de Panel
/etc/pterodactyl/config.yml Wings configuratie: autorisatietoken, Panel URL, Docker instellingen. Wordt aangemaakt tijdens de Wings installatie
/var/lib/pterodactyl/volumes/ Directory met game server gegevens: world-bestanden, configuraties, plugins. Wordt aangemaakt na de Wings installatie

Wat wordt er automatisch geïnstalleerd

Het playbook installeert en configureert automatisch:

  • Pterodactyl Panel - centraal beheerpannel met webinterface;
  • MariaDB - database voor het opslaan van alle systeemgegevens;
  • Redis - voor caching en taakwachtrijen;
  • NGINX - webserver die samenwerkt met een Docker-container voor geautomatiseerd SSL-certificaatbeheer (Certbot);
  • PHP + PHP-FPM - voor de werking van de Laravel applicatie;
  • Certbot - voor automatische verkrijging van SSL-certificaten;
  • Systemd services - pteroq (verwerking van wachtrijen), cron tasks (scheduler).

Wat moet er aanvullend worden geïnstalleerd

Om game servers te draaien heb je het volgende nodig:

  • Wings - daemon die fysiek de game servers start en beheert in Docker-containers

Wings wordt geïnstalleerd op elke machine (node) waar game servers gepland staan om te draaien. Dit kan dezelfde server zijn waar de Panel is geïnstalleerd ("all-in-one" configuratie) of aparte dedicated servers (gedistribueerde architectuur).

Systeemvereisten

Voor Panel (Control Panel)

Minimale vereisten:

  • Processor: 2+ cores;
  • Geheugen: 2 GB RAM (4 GB aanbevolen voor stabiele werking);
  • Schijf: 20 GB SSD (40+ GB aanbevolen voor logs en back-ups);
  • OS: Ubuntu 22.04 LTS (Jammy) - strikt deze versie voor automatische installatie.

Software (automatisch geïnstalleerd):

  • PHP + PHP-FPM;
  • MariaDB 10.6+;
  • Redis 7.0+;
  • NGINX;
  • Composer 2;
  • Certbot (voor SSL);
  • Docker (pre-geïnstalleerd in de image).

Netwerkvereisten:

  • Open poorten: 80 (HTTP), 443 (HTTPS);
  • Statisch IP-adres of domeinnaam; om automatisch een SSL-certificaat via Let's Encrypt te verkrijgen, is een geldig FQDN in het hostkey.com domein vereist;
  • Stabiele internetverbinding.

Voor Node (Nodes met Game Servers)

Voor 5-10 gelijktijdige game servers:

  • Processor: 4+ cores (6-8 cores aanbevolen voor veeleisende games);
  • Geheugen: 8 GB RAM (12-16 GB aanbevolen afhankelijk van de games);
  • Schijf: 50 GB SSD (100+ GB aanbevolen voor meerdere servers met mods);
  • OS: Ubuntu 20.04/22.04, Debian 10/11, CentOS ⅞ (elke Linux met Docker ondersteuning).
  • Software:
    • Docker (pre-geïnstalleerd in de image);
    • Wings (vereist installatie).

Netwerkvereisten:

  • Open poorten:
    • 8080 - Wings API (communicatie met Panel);
    • 12333 - SSL verbinding Wings/Daemon;
    • 2022 - SFTP (bestand uploaden naar game servers);
    • 25565-25665 - poortbereik voor games (individueel te configureren);
  • Stabiele internetverbinding met goede bandbreedte;
  • Lage latency voor comfortabel gamen.

"All-in-One" Configuratie (Panel + Wings op één server)

Voor testen of kleine projecten kun je één server gebruiken:

  • Processor: 4+ cores;
  • Geheugen: 8 GB RAM (minimaal 6 GB);
  • Schijf: 60 GB SSD (100+ GB aanbevolen);
  • OS: Ubuntu 22.04 LTS.

In deze configuratie draait er één server:

  • Pterodactyl Panel (webinterface);
  • Wings (server startup daemon);
  • Database en cache;
  • Game servers in Docker-containers.

Aanbevelingen voor Game Resources

Geschatte vereisten per game server:

Game RAM CPU Disk
Minecraft (Vanilla/Paper) 2-4 GB 2+ cores 5-10 GB
Minecraft met mods (Forge/Fabric) 4-8 GB 4+ cores 10-20 GB
CS2 / CS:GO 4-6 GB 4+ cores 15-20 GB
Rust 8-12 GB 4+ cores 20-30 GB
ARK: Survival Evolved 8-16 GB 6+ cores 30-50 GB
Terraria 1-2 GB 2+ cores 2-5 GB
Valheim 4-6 GB 4+ cores 5-10 GB

Aan de slag na Pterodactyl Deployment

Nadat u voor uw bestelling heeft betaald, ontvangt u een melding op het e-mailadres waarmee u zich heeft geregistreerd. Hierin staat dat uw server klaar is om te werken. Het bevat het VPS IP-adres, evenals een login en wachtwoord voor de verbinding. De klanten van ons bedrijf beheren hardware in de servers en API control panelInvapi.

Autorisatiegegevens die te vinden zijn in het Configuration >> Tags tabblad van de server control panel of in de e-mail:

  • Link: in de webpanel tag. Om toegang te krijgen tot het admin panel, voegt u /admin toe aan de hoofdlink;
  • Login: admin;
  • Password: verzonden via e-mail naar uw adres wanneer de server klaar is om te werken na software deployment.

Eerste Login

  1. Open een webbrowser en navigeer naar het adres van uw Pterodactyl panel;
  2. Klik op Login:

  3. Na succesvolle autorisatie wordt u doorverwezen naar de hoofdpagina van het panel.

  4. Om toegang te krijgen tot het admin panel, klikt u op de knop:

Een Gebruiker Aanmaken

  1. Klik in het linkermenu van het admin panel op de Users sectie;
  2. Klik op de Create New knop in de rechterbovenhoek:

  3. Vul de vereiste velden in:

    • Username: gebruikersnaam;
    • Email: e-mailadres van de gebruiker;
    • First Name: voornaam;
    • Last Name: achternaam;
    • Password: wachtwoord (minimaal 8 tekens, moet letters met verschillende hoofdletters/kleine letters en cijfers bevatten);
  4. Selecteer indien nodig Yes in de Administrator regel om administrator rechten te verlenen;
  5. Klik op Create User:

Een Location Aanmaken

Wat is een Location

Een Location is een logische groepering van nodes op basis van geografische locatie of doel. Gebruikt voor het organiseren van servers, bijvoorbeeld: "EU", "US", "Asia", "Production", "Testing". Gebruikers zien locaties niet direct; dit is een administratief hulpmiddel.

  1. Selecteer in het linkermenu Locations;
  2. Klik op de Create New knop in de rechterbovenhoek:

  3. Vul de velden in:

    • Short Code: korte locatiecode (bijv. "US1", "EU1");
    • Description: beschrijving van de locatie (bijv. "Data center in the USA");
  4. Klik op Create:

Een Node Aanmaken

Wat is een Node

Een Node is een fysieke of virtuele server waarop game servers worden gestart via Wings. Elke node heeft zijn eigen resources (CPU, RAM, schijf) en kan meerdere game servers tegelijkertijd bedienen.

Voorbereiding voor het aanmaken van een Node

Zorg er voordat u een node aanmaakt voor dat:

  • Docker is geïnstalleerd op de server (pre-geïnstalleerd in HOSTKEY images);
  • U een IP-adres of domeinnaam heeft voor de node;
  • Poorten 8080 (Wings API) en 12333 (Wings/Daemon SSL communicatie) geopend worden in de firewall.

Een Node aanmaken in Panel

  1. Selecteer in het linkermenu van het admin panel Nodes;

  2. Klik op de Create New knop in de rechterbovenhoek:

  3. Vul de basic settings in:

    • Name: unieke nodenaam (bijv. hostkey-us-node1);
    • Location: selecteer de eerder aangemaakte locatie;
    • Public: vink het vakje aan als de node zichtbaar moet zijn voor gebruikers;
    • FQDN: specificeer de panel domeinnaam (bijv. pterodactyl50514.hostkey.in) of het IP-adres;
    • Communicate Over SSL: vink het vakje aan als Panel HTTPS gebruikt;
    • Behind Proxy: laat dit uitgeschakeld als de node zich niet achter een proxy bevindt.
  4. Configureer de resource settings:

    • Daemon Server File Directory: /var/lib/pterodactyl/volumes (niet wijzigen);
    • Total Memory: specificeer beschikbaar RAM in MB (bijv. 4608 voor een 6GB server rekening houdend met reserve);
    • Memory Over-Allocation: specificeer 0 (geen over-allocatie);
    • Total Disk Space: specificeer beschikbare schijfruimte in MB (bijv. 102400 voor een 120GB schijf rekening houdend met reserve);
    • Disk Over-Allocation: specificeer 0 (geen over-allocatie);
    • Daemon Port: 8080 (laat standaard staan);
    • Daemon SFTP Port: 2022 (laat standaard staan).

  5. Klik op de Create Node knop.

Belangrijk bij gebruik van HTTPS

Als Panel via HTTPS werkt, moet u in het FQDN-veld een domeinnaam opgeven, geen IP-adres. Het opgeven van een IP-adres met SSL ingeschakeld zal resulteren in een validatiefout.

Voorbeeldinstellingen voor All-in-One Configuratie (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 (houdt 1.5GB over voor het systeem)
    Memory Over-Allocation: 0
    Total Disk Space: 102400 MB (houdt 20GB over voor het systeem)
    Disk Over-Allocation: 0

Allocaties configureren

Nadat u een node heeft aangemaakt, moet u allocaties configureren - dit zijn IP-adres en poort combinaties die beschikbaar zullen zijn voor toewijzing aan game servers.

  1. Na het aanmaken van de node wordt de pagina automatisch geopend. Navigeer naar het tabblad Allocation;

  2. In de sectie Assign New Allocations (rechterkant), vul de velden in:

    • IP Address: voer het server IP-adres in;
    • IP Alias: specificeer een beschrijving (bijv. Main IP) of laat het leeg;
    • Ports: specificeer een poortbereik (bijv. 25565-25570 voor Minecraft servers).
  3. Klik op de groene Submit knop:

  4. Gemaakte allocaties verschijnen in de tabel Existing Allocations (linkerkant). Elke rij vertegenwoordigt een aparte IP:poort combinatie die kan worden toegewezen aan een game server.

Opmerking

Zonder het configureren van allocaties kunt u geen servers maken op deze node. U moet ten minste één IP-adres met poorten toevoegen.

Poort aanbevelingen

  • Minecraft: 25565-25570 (standaard poort 25565);
  • CS2/CS:GO: 27015-27020 (standaard poort 27015);
  • Rust: 28015-28020 (standaard poort 28015);
  • Valheim: 2456-2460 (standaard poort 2456).

Wings installeren

Cruciaal voor de werking

Nadat u een node heeft aangemaakt en allocaties heeft geconfigureerd, moet u Wings installeren op de server. Zonder Wings zal de node de status Offline tonen en kan hij geen game servers starten.

Verbind met de server via SSH en voer de volgende commando's uit:

Maak een directory aan voor configuratie:

mkdir -p /etc/pterodactyl
Download Wings:

curl -L -o /usr/local/bin/wings "https://github.com/pterodactyl/wings/releases/latest/download/wings_linux_amd64"
Geef uitvoerrechten:

chmod u+x /usr/local/bin/wings
Verifieer de installatie:

wings version

De Wings-versie moet worden weergegeven (bijv. wings vv1.12.1).

Wings configureren via Auto-Deploy (Aanbevolen)

  1. Ga in het admin panel naar het tabblad Configuration van de aangemaakte node;

  2. In de sectie Auto-Deploy (rechterkant), klik op de Generate Token knop:

  3. Kopieer het gegenereerde commando. Het zal er ongeveer zo uitzien als dit:

        cd /etc/pterodactyl && wings configure --panel-url https://your-domain.com --token TOKEN --node 1
    

  4. Voer het gekopieerde commando uit op de server:

        cd /etc/pterodactyl && wings configure --panel-url https://pterodactyl50514.hostkey.in --token TOKEN --node 1
    

    De melding zou moeten verschijnen: Successfully configured wings.

  5. Verifieer de aangemaakte configuratie:

        cat /etc/pterodactyl/config.yml
    

Een systemd Service aanmaken

Maak een systemd service aan voor automatische Wings-start:

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 starten

Herlaad de systemd configuratie

systemctl daemon-reload
Schakel autostart in en start Wings

systemctl enable --now wings
Controleer de status

systemctl status wings

De status zou Active: active (running) moeten tonen.

Werking controleren

Controleer de Wings logs:

journalctl -u wings -n 50

De logs zouden meldingen moeten bevatten:

  • fetching list of servers from API - Wings is verbonden met Panel;
  • configuring internal webserver - Wings webserver is gestart;
  • sftp server listening for connections - SFTP server werkt.

Verifieer de aanmaak van de serverdirectory:

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

Statuscontrole in Admin Panel

  1. Open het admin panel: https://your-domain.com/admin;
  2. Navigeer naar: Admin > Nodes > uw node;
  3. Vernieuw de pagina (F5);
  4. De groene Online statusindicator moet rechtsboven worden weergegeven;
  5. Op het tabblad About moeten de resource-informaties worden weergegeven (CPU, RAM, Disk).

Als de Node de status Online toont

De node is volledig geconfigureerd en klaar om game servers te maken!

Probleemoplossing

Node toont status Offline

Controleer de Wings-status:

systemctl status wings

Als Wings niet draait, start het dan:

systemctl start wings

Contcontroleer logs op fouten:

journalctl -u wings -n 100

Veelvoorkomende problemen:

  1. Wings kan geen verbinding maken met Panel:

    • Controleer de panel URL in de configuratie: cat /etc/pterodactyl/config.yml | grep remote;
    • Zorg dat de Panel toegankelijk is: curl -I https://your-domain.com.
  2. Poort 8080 wordt geblokkeerd door de firewall:

    • Controleer de poort: netstat -tulpn | grep 8080;
    • Open de poort: ufw allow 8080/tcp.
  3. SSL-problemen:

    • Als Panel HTTPS gebruikt, moet Wings ook met SSL werken;
    • Controleer de SSL-instellingen in /etc/pterodactyl/config.yml.

Handmatige Configuratie (Alternatieve Methode)

Als Auto-Deploy niet werkt, kunt u Wings handmatig configureren:

  1. Ga in het admin panel naar het tabblad Configuration van de node;
  2. Kopieer de inhoud van het configuratiebestand uit het linker tekstveld;
  3. Maak op de server een configuratiebestand aan:

    nano /etc/pterodactyl/config.yml
    

  4. Plak de gekopieerde configuratie en sla op (Ctrl+X, dan Y, dan Enter);

  5. Herstart Wings: systemctl restart wings;
  6. Controleer de status: systemctl status wings.

Een Nest aanmaken en een Egg toevoegen

Een Nest aanmaken

  1. Selecteer in het linkermenu de sectie Nests;
  2. Klik op de Create New knop in de rechterbovenhoek:

  3. Vul de velden in:

    • Name: naam van de nest (bijv. "Minecraft");
    • Description: beschrijving van de nest;
  4. Klik op Save:

Download een kant-en-klare Egg

  1. Open de website https://pelican-eggs.github.io/;

  2. Zoek het gewenste spel:

    • Selecteer in de sectie Game Eggs een categorie (bijv. Minecraft);
    • Zoek het gewenste type server (bijv. Paper, Vanilla, Forge);
  3. Klik op de naam van de server om de GitHub-pagina te openen;

  4. Zoek het egg-name.json bestand (bijv. egg-paper.json);

  5. Klik op het bestand en vervolgens op de Raw knop in de rechterbovenhoek;

  6. Sla het bestand op (Ctrl+S of rechtermuisknop > Save as).

Populaire Eggs

Importeer de Egg in de Panel

  1. Ga in het admin panel naar de sectie Nests;

  2. Klik op de Import Egg knop in de rechterbovenhoek:

  3. Klik op Choose File en selecteer het gedownloade .json bestand;

  4. Klik op Import:

De egg wordt geïmporteerd met alle instellingen, Docker-images en variabelen.

Verifieer de geïmporteerde Egg

  1. Zoek in de lijst met eggs de geïmporteerde (bijv. Paper);

  2. Klik erop om de instellingen te bekijken;

  3. Zorg dat het volgende is ingevuld:

    • Docker Images: lijst van beschikbare images;
    • Install Script: installatiescript voor de server;
    • Variables: omgevingsvariabelen (versie, instellingen).

Een Server aanmaken

  1. Selecteer in het linkermenu Servers;

  2. Klik op de Create New knop in de rechterbovenhoek:

  3. Vul het aanmaakformulier in:

Core Details:

  • Server Name: servernaam (bijv. Test Minecraft Server);
  • Server Owner: selecteer de eigenaar uit de lijst;
  • Server Description: beschrijving (optioneel);
  • Start Server when Installed: laat dit vinkje aanstaan.

Allocation Management:

  • Node: selecteer de aangemaakte node;
  • Default Allocation: selecteer IP-adres:poort uit de lijst;
  • Additional Allocations: laat leeg.

Application Feature Limits:

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

Resource Management:

  • CPU Limit: 0 (geen limieten);
  • Memory: 2048 MiB (2GB om te beginnen);
  • Swap: 0 MiB;
  • Disk Space: 5120 MiB (5GB);
  • Block IO Weight: 500;
  • Enable OOM Killer: laat dit uitgeschakeld.

Nest Configuration:

  • Nest: Minecraft;
  • Egg: Paper (niet Sponge!);
  • Docker Image: Java 21;
  • Service Variables: laat de standaardwaarden staan.

  • Klik onderaan de pagina op Create Server;

  • Wacht tot de installatie is voltooid (de status Installing verandert in Offline):

De server starten en configureren

  1. Open na de installatie de server uit de lijst (Admin > Servers):

  2. Ga naar het gebruikerspaneel (zonder /admin), log in als de eigenaar van de server;

  3. Klik op de Start knop:

  4. Bij de eerste lancering verschijnt er een venster voor het accepteren van een licentie:

  5. Klik op I Accept om de Minecraft EULA te accepteren;

  6. Wacht tot de server is gestart (de status verandert in Running):

Performance Check

Open in uw browser (vervang IP door het uwe):

https://api.mcsrvstat.us/3/<IP-adres>:25565
Als de reactie "online": true aangeeft - dan werkt de server en is deze toegankelijk voor spelers.

Verbindingsadres:

<IP-adres>:25565

Opmerking

Gedetailleerde informatie over de belangrijkste instellingen van Pterodactyl is te vinden in de documentatie voor ontwikkelaars.

Bestel een Pterodactyl Server via de API

question_mark
Is there anything I can help you with?
question_mark
AI Assistant ×