Pterodactyl Control Panel¶
Dans cet article
- Pterodactyl. Fonctionnalités principales
- Fonctionnalités de déploiement
- Démarrage après le déploiement de Pterodactyl
- Créer un utilisateur
- Créer une Localisation (Location)
- Créer un Nœud (Node)
- Configurer les Allocations
- Installer Wings
- Dépannage
- Créer un Nest (Nid) et Ajouter un Egg (Œuf)
- Créer un Serveur
- Démarrer et Configurer le Serveur
- Vérification des Performances
- Commander un serveur Pterodactyl via l'API
Information
Pterodactyl est un panneau de gestion de serveurs de jeux open-source gratuit. Il permet une gestion centralisée des serveurs pour Minecraft, CS2, Rust et plus de 50 autres jeux via une interface web.
Pterodactyl. Fonctionnalités principales¶
Pterodactyl est une solution moderne de gestion de serveurs de jeux qui combine :
- Support pour plus de 50 jeux : Fournit des modèles prêts à l'emploi pour une installation rapide des serveurs de jeux populaires. Configure automatiquement les logiciels, les dépendances et les paramètres de démarrage, prend en charge la sélection de la version du jeu et l'ajout de modèles personnalisés.
- Gestion précise des ressources : Contrôle la RAM, le CPU, l'espace disque et l'allocation des priorités entre les serveurs. Empêche les surcharges, alloue les ressources par quotas et utilise la mémoire SWAP pour la stabilité.
- Sauvegardes automatiques fiables : Assure des sauvegardes planifiées flexibles avec sélection des données (serveur entier ou fichiers clés). Stocke les sauvegardes localement ou dans le cloud (S3, FTP, GDrive) avec chiffrement et récupération instantanée.
- Capacité multi-serveurs efficace : Exécute chaque serveur dans un conteneur Docker isolé. Distribue automatiquement la charge sur les nœuds, assigne les ports sans conflit et permet le regroupement de serveurs liés.
- Accès multi-utilisateur flexible : Gère les permissions via un modèle basé sur les rôles (rôles prédéfinis + personnalisés) avec plus de 50 permissions granulaires. Prend en charge l'accès temporaire, l'audit des actions et l'authentification à deux facteurs.
- Console de gestion en temps réel : Offre un contrôle total via une interface web avec un terminal interactif (similaire à SSH). Inclut le formatage couleur, l'historique des commandes, des boutons d'action rapide et des notifications d'événements.
- Surveillance statistique en temps réel : Affiche des graphiques d'utilisation des ressources (CPU, RAM, disque, réseau) et des métriques de jeu (joueurs en ligne, TPS, ping). Permet de créer des tableaux de bord personnalisés, de configurer des alertes et d'exporter des données au format CSV.
- Gestion simplifiée des mods/plugins : Propose un magasin intégré pour l'installation automatique de mods, la gestion des versions et des dépendances. Inclut un éditeur de configuration visuel avec coloration syntaxique et notifications de mise à jour.
- Mises à jour automatiques : Assure le fonctionnement ininterrompu du système. Met à jour les serveurs de jeux selon un calendrier avec mode test et retour arrière en cas d'erreur. Met à jour le panneau de contrôle via une commande (
php artisan p:upgrade), vérifiant la compatibilité et migrant la base de données sans perte de données. Met à jour automatiquement le démon Wings, maintenant la compatibilité avec les différentes distributions Linux.
Fonctionnalités de déploiement¶
| ID | Nom du logiciel | Système d'exploitation compatible | VM | BM | VGPU | GPU | Min CPU (Cœurs) | Min RAM (GB) | Min HDD/SSD (GB) | Domaine personnalisé | Actif |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 326 | Pterodactyl | Ubuntu 22.04 | + | + | + | + | 1 | 1 | - | Non | COMMANDER |
Composants principaux du système :¶
| Composant | Utilité |
|---|---|
| Panel | Interface de gestion web (PHP/Laravel). Fournit le panneau d'administration et l'interface utilisateur pour la gestion des serveurs |
| Wings | Démon pour le démarrage physique des serveurs de jeux (Go). Installé séparément sur les machines où les serveurs de jeux seront exécutés |
| Database | MariaDB pour stocker les configurations, les utilisateurs, les serveurs et les paramètres |
| Docker | Plateforme de conteneurisation, requise pour le fonctionnement de Wings et l'isolation des serveurs de jeux |
Fichiers de configuration¶
| Chemin | Utilité |
|---|---|
/var/www/pterodactyl/.env | Paramètres principaux du Panel : connexion à la base de données, Redis, APP_URL, APP_KEY |
/var/www/pterodactyl/storage/logs/laravel.log | Journaux d'exploitation du Panel (erreurs d'application, requêtes) |
/var/log/nginx/pterodactyl.app-error.log | Journaux du serveur web NGINX pour le Panel |
/etc/pterodactyl/config.yml | Configuration de Wings : jeton d'autorisation, URL du Panel, paramètres Docker. Créé lors de l'installation de Wings |
/var/lib/pterodactyl/volumes/ | Répertoire des données des serveurs de jeux : fichiers de monde, configurations, plugins. Créé après l'installation de Wings |
Ce qui est installé automatiquement¶
Le playbook installe et configure automatiquement :
- Pterodactyl Panel - panneau de gestion central avec interface web ;
- MariaDB - base de données pour stocker toutes les données du système ;
- Redis - pour le cache et les files d'attente de tâches ;
- NGINX - serveur web fonctionnant en conjonction avec un conteneur Docker pour la gestion automatisée des certificats SSL (Certbot) ;
- PHP + PHP-FPM - pour le fonctionnement de l'application Laravel ;
- Certbot - pour l'acquisition automatique de certificats SSL ;
- Services systemd - pteroq (traitement des files d'attente), tâches cron (planificateur).
Ce qui doit être installé en plus¶
Pour exécuter des serveurs de jeux, vous avez besoin de :
- Wings - démon qui démarre et gère physiquement les serveurs de jeux dans des conteneurs Docker.
Wings est installé sur chaque machine (nœud) où les serveurs de jeux sont prévus pour fonctionner. Cela peut être le même serveur que celui où le Panel est installé (configuration "all-in-one") ou des serveurs dédiés séparés (architecture distribuée).
Configuration requise du système¶
Pour le Panel (Control Panel)¶
Configuration minimale :
- Processeur : 2+ cœurs ;
- Mémoire : 2 Go de RAM (4 Go recommandés pour un fonctionnement stable) ;
- Disque : 20 Go SSD (40+ Go recommandés pour les logs et sauvegardes) ;
- OS : Ubuntu 22.04 LTS (Jammy) - strictement cette version pour l'installation automatique.
Logiciels (installés automatiquement) :
- PHP + PHP-FPM ;
- MariaDB 10.6+ ;
- Redis 7.0+ ;
- NGINX ;
- Composer 2 ;
- Certbot (pour SSL) ;
- Docker (préinstallé dans l'image).
Configuration réseau :
- Ports ouverts : 80 (HTTP), 443 (HTTPS) ;
- Adresse IP statique ou nom de domaine ; pour obtenir automatiquement un certificat SSL via Let's Encrypt, un FQDN valide dans le domaine
hostkey.comest requis ; - Connexion Internet stable.
Pour le Node (Nœuds avec serveurs de jeux)¶
Pour 5 à 10 serveurs de jeux simultanés :
- Processeur : 4+ cœurs (6-8 cœurs recommandés pour les jeux exigeants) ;
- Mémoire : 8 Go RAM (12-16 Go recommandés selon les jeux) ;
- Disque : 50 Go SSD (100+ Go recommandés pour plusieurs serveurs avec mods) ;
- OS : Ubuntu 20.04/22.04, Debian 10/11, CentOS ⅞ (n'importe quel Linux avec support Docker).
- Logiciels :
- Docker (préinstallé dans l'image) ;
- Wings (nécessite une installation).
Configuration réseau :
- Ports ouverts :
- 8080 - API Wings (communication avec le Panel) ;
- 12333 - Connexion SSL Wings/Daemon ;
- 2022 - SFTP (téléchargement de fichiers vers les serveurs de jeux) ;
- 25565-25665 - plage de ports de jeu (configurée individuellement) ;
- Connexion Internet stable avec une bonne bande passante ;
- Faible latence pour un gameplay confortable.
Configuration "All-in-One" (Panel + Wings sur un seul serveur)¶
Pour les tests ou les petits projets, vous pouvez utiliser un seul serveur :
- Processeur : 4+ cœurs ;
- Mémoire : 8 Go RAM (minimum 6 Go) ;
- Disque : 60 Go SSD (100+ Go recommandés) ;
- OS : Ubuntu 22.04 LTS.
Dans cette configuration, un seul serveur exécute :
- Pterodactyl Panel (interface web) ;
- Wings (démon de démarrage du serveur) ;
- Base de données et cache ;
- Serveurs de jeux dans des conteneurs Docker.
Recommandations de ressources pour les jeux
Besoins approximatifs par serveur de jeu :
| Jeu | RAM | CPU | Disque |
|---|---|---|---|
| Minecraft (Vanilla/Paper) | 2-4 Go | 2+ cœurs | 5-10 Go |
| Minecraft avec mods (Forge/Fabric) | 4-8 Go | 4+ cœurs | 10-20 Go |
| CS2 / CS:GO | 4-6 Go | 4+ cœurs | 15-20 Go |
| Rust | 8-12 Go | 4+ cœurs | 20-30 Go |
| ARK: Survival Evolved | 8-16 Go | 6+ cœurs | 30-50 Go |
| Terraria | 1-2 Go | 2+ cœurs | 2-5 Go |
| Valheim | 4-6 Go | 4+ cœurs | 5-10 Go |
Démarrage après le déploiement de Pterodactyl¶
Après avoir payé votre commande, vous recevrez une notification sur l'e-mail avec lequel vous vous êtes inscrit, vous informant que votre serveur est prêt. Elle contiendra l'adresse IP du VPS, ainsi qu'un identifiant et un mot de passe pour la connexion. Les clients de notre entreprise gèrent le matériel dans les serveurs et le panneau de contrôle API — Invapi.
Les données d'autorisation qui peuvent être trouvées dans l'onglet Configuration >> Tags du panneau de contrôle du serveur ou dans l'e-mail sont les suivantes :
- Lien : dans le tag webpanel. Pour accéder au panneau d'administration, ajoutez
/adminau lien principal ; - Login :
admin; - Password : envoyé par e-mail à votre adresse lorsque le serveur est prêt à fonctionner après le déploiement du logiciel.
Première connexion¶
- Ouvrez un navigateur web et accédez à l'adresse de votre panneau Pterodactyl ;
-
Cliquez sur
Login:
-
Après une authentification réussie, vous serez redirigé vers la page principale du panneau.
-
Pour accéder au panneau d'administration, cliquez sur le bouton
:
Créer un utilisateur¶
- Dans le menu de gauche du panneau d'administration, cliquez sur le nom de la section Users ;
-
Cliquez sur le bouton
Create Newdans le coin supérieur droit :
-
Remplissez les champs requis :
- Username : nom d'utilisateur ;
- Email : adresse e-mail de l'utilisateur ;
- First Name : prénom ;
- Last Name : nom ;
- Password : mot de passe (minimum 8 caractères, doit contenir des lettres de différentes casses et des chiffres) ;
- Si nécessaire, sélectionnez
Yessur la ligne Administrator pour accorder les droits d'administrateur ; -
Cliquez sur
Create User:
Créer une Localisation (Location)¶
Qu'est-ce qu'une Location
Une Location est un regroupement logique de nœuds par emplacement géographique ou par usage. Utilisée pour organiser les serveurs, par exemple : "EU", "US", "Asia", "Production", "Testing". Les utilisateurs ne voient pas directement les Localisations ; c'est un outil administratif.
- Dans le menu de gauche, sélectionnez Locations ;
-
Cliquez sur le bouton
Create Newdans le coin supérieur droit :
-
Remplissez les champs :
- Short Code : code court de la localisation (ex: "US1", "EU1") ;
- Description : description de la localisation (ex: "Data center in the USA") ;
-
Cliquez sur
Create:
Créer un Nœud (Node)¶
Qu'est-ce qu'un Node
Un Node est un serveur physique ou virtuel sur lequel les serveurs de jeux sont lancés via Wings. Chaque nœud possède ses propres ressources (CPU, RAM, disque) et peut servir plusieurs serveurs de jeux simultanément.
Préparation avant la création d'un Nœud¶
Avant de créer un nœud, assurez-vous que :
- Docker est installé sur le serveur (préinstallé dans les images HOSTKEY) ;
- Vous avez une adresse IP ou un nom de domaine pour le nœud ;
- Les ports 8080 (API Wings) et 12333 (communication SSL Wings/Daemon) seront ouverts dans le pare-feu.
Créer un Nœud dans le Panel¶
-
Dans le menu de gauche du panneau d'administration, sélectionnez Nodes ;
-
Cliquez sur le bouton
Create Newdans le coin supérieur droit :
-
Remplissez les basic settings :
- Name : nom unique du nœud (ex:
hostkey-us-node1) ; - Location : sélectionnez la localisation précédemment créée ;
- Public : cochez la case si le nœud doit être visible par les utilisateurs ;
- FQDN : spécifiez le nom de domaine du panneau (ex:
pterodactyl50514.hostkey.in) ou l'adresse IP ; - Communicate Over SSL : cochez la case si le Panel utilise HTTPS ;
- Behind Proxy : laissez désactivé si le nœud n'est pas derrière un proxy.
- Name : nom unique du nœud (ex:
-
Configurez les resource settings :
- Daemon Server File Directory :
/var/lib/pterodactyl/volumes(ne pas modifier) ; - Total Memory : spécifiez la RAM disponible en Mo (ex:
4608pour un serveur de 6 Go en tenant compte de la réserve) ; - Memory Over-Allocation : spécifiez
0(pas de surallocation) ; - Total Disk Space : spécifiez l'espace disque disponible en Mo (ex:
102400pour un disque de 120 Go en tenant compte de la réserve) ; - Disk Over-Allocation : spécifiez
0(pas de surallocation) ; - Daemon Port :
8080(laisser par défaut) ; - Daemon SFTP Port :
2022(laisser par défaut).

- Daemon Server File Directory :
-
Cliquez sur le bouton
Create Node.
Attention lors de l'utilisation de HTTPS
Si le Panel fonctionne en HTTPS, vous devez spécifier un nom de domaine dans le champ FQDN, et non une adresse IP. Spécifier une adresse IP avec SSL activé entraînera une erreur de validation.
Exemple de configuration pour une installation All-in-One (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 (laissant 1.5GB pour le système)
Memory Over-Allocation: 0
Total Disk Space: 102400 MB (laissant 20GB pour le système)
Disk Over-Allocation: 0
Configurer les Allocations¶
Après avoir créé un nœud, vous devez configurer les allocations — il ss'agit de des combinaisons d'adresses IP et de ports qui seront disponibles pour être assignées aux serveurs de jeux.
-
Après la création du nœud, sa page s'ouvrira automatiquement. Naviguez vers l'onglet Allocation ;
-
Dans la section Assign New Allocations (à droite), remplissez les champs :
- IP Address : entrez l'adresse IP du serveur ;
- IP Alias : spécifiez une description (ex:
Main IP) ou laissez vide ; - Ports : spécifiez une plage de ports (ex:
25565-25570pour des serveurs Minecraft).
-
Cliquez sur le bouton vert
Submit:
-
Les allocations créées apparaîtront dans le tableau Existing Allocations (à gauche). Chaque ligne représente une combinaison IP:port distincte qui peut être assignée à un serveur de jeu.

Remarque
Sans la configuration des allocations, vous ne pourrez pas créer de serveurs sur ce nœud. Vous devez ajouter au moins une adresse IP avec des ports.
Recommandations de Ports
- Minecraft : 25565-25570 (port standard 25565) ;
- CS2/CS:GO : 27015-27020 (port standard 27015) ;
- Rust : 28015-28020 (port standard 28015) ;
- Valheim : 2456-2460 (port standard 2456).
Installer Wings¶
Attention : Critique pour le fonctionnement
Après avoir créé un nœud et configuré les allocations, vous devez installer Wings sur le serveur. Sans Wings, le nœud affichera le statut Offline et ne pourra pas démarrer de serveurs de jeux.
Connectez-vous au serveur via SSH et exécutez les commandes suivantes :
Créez un répertoire pour la configuration :
Téléchargez Wings :curl -L -o /usr/local/bin/wings "https://github.com/pterodactyl/wings/releases/latest/download/wings_linux_amd64"
La version de Wings devrait s'afficher (ex: wings vv1.12.1).
Configurer Wings via Auto-Deploy (Recommandé)¶
-
Dans le panneau d'administration, allez dans l'onglet Configuration du nœud créé ;
-
Dans la section Auto-Deploy (à droite), cliquez sur le bouton
Generate Token:
-
Copiez la commande générée. Elle ressemblera à ceci :
-
Exécutez la commande copiée sur le serveur :
cd /etc/pterodactyl && wings configure --panel-url https://pterodactyl50514.hostkey.in --token TOKEN --node 1Le message suivant devrait apparaître :
Successfully configured wings. -
Vérifiez la configuration créée :
Créer un service systemd¶
Créez un service systemd pour le démarrage automatique de 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
Démarrer Wings¶
Rechargez la configuration systemd :
Activez le démarrage automatique et démarrez Wings : Vérifiez le statut :Le statut devrait afficher Active: active (running).
Vérification du fonctionnement¶
Consultez les journaux de Wings :
Les journaux devraient contenir des messages tels que :
fetching list of servers from API- Wings est connecté au Panel ;configuring internal webserver- Le serveur web de Wings a démarré ;sftp server listening for connections- Le serveur SFTP est opérationnel.
Vérifiez la création du répertoire des serveurs :
Vérification du statut dans le Panneau d'administration¶
- Ouvrez le panneau d'administration :
https://your-domain.com/admin; - Naviguez vers : Admin > Nodes > votre nœud ;
- Actualisez la page (F5) ;
- L'indicateur de statut vert Online devrait s'afficher en haut à droite ;
- Sur l'onglet About, les informations sur les ressources devraient être affichées (CPU, RAM, Disque).
Si le Nœud affiche le statut Online
Le nœud est entièrement configuré et prêt à créer des serveurs de jeux !
Dépannage¶
Le Nœud affiche le statut Offline¶
Vérifiez le statut de Wings :
Si Wings ne fonctionne pas, démarrez-le :
Vérifiez les journaux pour détecter des erreurs :
Problèmes courants :
-
Wings ne peut pas se connecter au Panel :
- Vérifiez l'URL du panneau dans la configuration :
cat /etc/pterodactyl/config.yml | grep remote; - Assurez-vous que le Panel est accessible :
curl -I https://your-domain.com.
- Vérifiez l'URL du panneau dans la configuration :
-
Le port 8080 est bloqué par le pare-feu :
- Vérifiez le port :
netstat -tulpn | grep 8080; - Ouvrez le port :
ufw allow 8080/tcp.
- Vérifiez le port :
-
Problèmes de SSL :
- Si le Panel utilise HTTPS, Wings doit également fonctionner avec SSL ;
- Vérifiez les paramètres SSL dans
/etc/pterodactyl/config.yml.
Configuration Manuelle (Méthode Alternative)¶
Si l'Auto-Deploy ne fonctionne pas, vous pouvez configurer Wings manuellement :
- Dans le panneau d'administration, allez dans l'onglet Configuration du nœud ;
- Copiez le contenu du fichier de configuration depuis le champ de texte à gauche ;
-
Sur le serveur, créez un fichier de configuration :
-
Collez la configuration copiée et enregistrez (
Ctrl+X, puisY, puisEntrée) ; - Redémarrez Wings :
systemctl restart wings; - Vérifiez le statut :
systemctl status wings.
Créer un Nest (Nid) et Ajouter un Egg (Œuf)¶
Créer un Nest¶
- Dans le menu de gauche, sélectionnez lasection Nests ; 2.Cliquez sur le bouton
Create Newdans le coin supérieur droit :
3.Remplissez les champs : - Name : nom du nest (ex: "Minecraft") ; - Description : description du nest ; 4.Cliquez sur Save :

Télécharger un Egg prêt à l'emploi¶
-
Ouvrez le site web https://pelican-eggs.github.io/ ;
-
Trouvez le jeu souhaité :
- Dans la section Game Eggs, sélectionnez une catégorie (ex: Minecraft) ;
- Trouvez le type de serveur souhaité (ex: Paper, Vanilla, Forge) ;
3.Cliquez sur le nom du serveur pour ouvrir la GitHub page ;
4.Trouvez le fichier egg-name.json (ex: egg-paper.json) ;
5.Cliquez sur le fichier, puis sur le bouton Raw dans le coin supérieur droit ;
6.Enregistrez le fichier (Ctrl+S ou clic droit > Save as).
Eggs populaires
- Minecraft Paper : egg-paper.json ;
- CS2 : egg-counter--strike2.json ;
- Rust : egg-rust.json ;
- Valheim : egg-valheim.json.
Importer l'Egg dans le Panneau¶
- Dans le panneau d'administration, allez dans lasection Nests ;
2.Cliquez sur le bouton Import Egg dans le coin supérieur droit :

3.Cliquez sur Choose File et sélectionnez le fichier .json téléchargé ;
4.Cliquez sur Import :

L'egg sera importé avec tous les paramètres, images Docker et variables.
Vérifier l'Egg Importé¶
- Dans la liste des eggs, trouvez celui qui a été importé (ex:
Paper) ;
2.Cliquez dessus pour voir les paramètres ;
3.Assurez-vous que les éléments suivants sont remplis :
- **Docker Images** : liste des images disponibles ;
- **Install Script** : script d'installation du serveur ;
- **Variables** : variables d'environnement (version, paramètres).


Créer un Serveur¶
- Dans le menu de gauche, sélectionnez Servers ;
2.Cliquez sur le bouton Create New dans le coin supérieur droit :

3.Remplissez le formulaire de création :
Core Details:
- Server Name : nom du serveur (ex:
Test Minecraft Server) ; - Server Owner : sélectionnez l'utilisateur propriétaire dans la liste ;
- Server Description : description (optionnelle) ;
- Start Server when Installed : laissez la case cochée.

Allocation Management:
- Node : sélectionnez le nœud créé ;
- Default Allocation : sélectionnez l'adresse IP:port dans la liste ;
- Additional Allocations : laissez vide.
Application Feature Limits:
- Database Limit :
0; - Allocation Limit :
0; - Backup Limit :
0.
Resource Management:

- CPU Limit :
0(pas de limite) ; - Memory :
2048MiB (2 Go pour commencer) ; - Swap :
0MiB ; - Disk Space :
5120MiB (5 Go) ; - Block IO Weight :
500; - Enable OOM Killer : laissez désactivé.
Nest Configuration:

- Nest :
Minecraft; - Egg :
Paper(pas Sponge !) ; - Docker Image :
Java 21; - Service Variables : laissez les valeurs par défaut.
4.Cliquez sur Create Server en bas de la page ;
5.Attendez que l'installation se termine (le statut Installing passera à Offline) :
Démarrer et Configurer le Serveur¶
-
Après l'installation, ouvrez le serveur depuis la liste (Admin > Servers) :

2.Allez sur le panneau utilisateur (sans /admin), connectez-vous en tant que propriétaire du serveur ;
3.Cliquez sur le bouton Start :

4.Lors du premier lancement, une fenêtre d'acceptation de licence apparaîtra :

5.Cliquez sur I Accept pour accepter l'EULA de Minecraft ;
6.Attendez que le serveur démarre (le statut passera à Running) :

Vérification des Performances¶
Ouvrez dans votre navigateur (remplacez l'IP par la vôtre) :
Si la réponse affiche"online": true - le serveur fonctionne et est accessible aux joueurs. Adresse de connexion :
Remarque
Les informations détaillées sur les paramètres principaux de Pterodactyl se trouvent dans la documentation des développeurs.
Commander un serveur Pterodactyl via l'API¶
Pour installer ce logiciel via l'API, suivez ces instructions.