Qu'est-ce qu'un egg

Un egg définit comment un logiciel est installé et démarré sur un serveur Pterodactyl : image Docker utilisée, script d'installation, commande de démarrage, variables configurables exposées à l'utilisateur. Les eggs sont regroupés par catégories appelées nests (par exemple : Minecraft, jeux Source, bots Discord).

Beaucoup d'eggs prêts à l'emploi existent déjà pour les logiciels courants — inutile d'en écrire un depuis zéro si le jeu ou l'application est répandu.

Importer un egg existant

Depuis l'administration du panel (section Nests), un bouton d'import permet de charger un egg à partir d'un fichier JSON ou d'une URL directe vers ce fichier. La plupart des eggs communautaires sont distribués sous cette forme et s'importent en quelques secondes.

  1. Récupère le fichier .json de l'egg voulu.
  2. Va dans Nests > Import Egg.
  3. Sélectionne le nest cible (ou crée-en un nouveau si aucun ne correspond).
  4. Charge le fichier.

Structure d'un egg

Un egg définit principalement :

  • l'image Docker utilisée pour exécuter le serveur (l'environnement système de base) ;
  • le script d'installation, exécuté une seule fois à la création du serveur pour télécharger et préparer le logiciel ;
  • la commande de démarrage, exécutée à chaque lancement du serveur ;
  • les variables exposées à l'utilisateur final (version, port, options), avec leurs règles de validation.

Modifier un egg importé

Un egg importé reste modifiable depuis l'interface : script d'installation, variables, image Docker. Utile pour l'adapter légèrement à ton infrastructure (miroir de téléchargement différent, variable supplémentaire) sans repartir de zéro.

Modifier un egg déjà utilisé par des serveurs existants ne les met pas à jour automatiquement — seuls les nouveaux serveurs créés avec cet egg utiliseront la version modifiée, sauf réinstallation manuelle des serveurs existants.

Créer un egg personnalisé

Pour un logiciel sans egg communautaire disponible, un egg peut être créé manuellement en définissant chacun des éléments ci-dessus depuis l'interface d'édition. C'est plus long qu'un import, mais suit exactement la même structure.