Dans la section précédente, vous avez enregistré un nœud et créé 11 ports Minecraft sur celui-ci, à savoir du 25565 au 25575. Pour permettre aux joueurs de rejoindre un monde, vous devez d'abord créer un serveur Minecraft sur ce nœud, puis le démarrer depuis le panneau de configuration.
Remplissez le formulaire du serveur
Dans l'espace d'administration, ouvrez « Serveurs », puis « Créer un nouveau serveur ». Un long formulaire regroupe toutes les décisions, organisées en panneaux de haut en bas. Le premier panneau permet de nommer le serveur et de désigner son propriétaire ; ce dernier est un utilisateur du panneau qui verra le serveur apparaître dans son tableau de bord. Le compte administrateur créé dans la partie 2 convient pour un premier serveur. La case à cocher « Démarrer le serveur après l'installation » est cochée par défaut, et c'est le bon choix dans ce cas.
Le deuxième panneau permet de configurer le serveur. Sélectionnez le nœud, puis l'attribution par défaut, c'est-à-dire l'adresse IP et le port que les joueurs utiliseront. Ce serveur prend 10.0.2.15:25565, le premier portage de Minecraft évoqué dans la section précédente, de sorte que les joueurs n'ont qu'à saisir l'adresse de la machine, sans rien d'autre.
Viennent ensuite les limites de fonctionnalités. La limite de bases de données et la limite d'allocation indiquent le nombre de bases de données MariaDB et de ports supplémentaires que le propriétaire peut créer à lui seul ; la valeur 0 signifie qu'aucune création n'est autorisée. La limite de sauvegardes est ici de 3, ce qui correspond au nombre de sauvegardes que ce serveur peut contenir simultanément.
Définir les limites des ressources
Le panneau de gestion des ressources détermine la part du nœud que ce serveur est autorisé à utiliser, et Docker veille à ce que cette limite soit strictement respectée :
- Limite du processeur : un pourcentage correspondant à un thread ; ainsi, 100 correspond à un thread complet et 200 à deux. Le texte d'aide du formulaire indique la formule, qui correspond au nombre de threads multiplié par 100. Ce serveur utilise la valeur 200.
- Mémoire : 2 048 Mio. Tout conteneur dépassant cette limite est arrêté par le noyau ; cette valeur inclut donc le tas Java ainsi que la mémoire dont le processus Java a besoin au-delà de celui-ci. La plateforme a mesuré environ 1,06 Gio pour un serveur Paper au repos, et 2 Gio laissent une marge de manœuvre.
- Échange : 0, ce qui désactive l'espace d'échange pour le conteneur. Une valeur de -1 autorise un espace d'échange illimité.
- Espace disque : 5 000 Mio pour le monde, les plugins, les journaux et le fichier JAR du serveur.
- Poids des E/S par bloc : 500, valeur par défaut, correspond à un poids relatif attribué au débit du disque lorsque plusieurs serveurs sont en concurrence.
Les valeurs totales du nœud indiquées dans la section précédente constituent le plafond. Avec un taux de surallocation de 0 %, le panneau refuse de créer un serveur dont les limites feraient dépasser au nœud 6 144 Mio de mémoire ou 30 000 Mio d'espace disque.
Choisissez le nid et l'œuf
Un « nid » est une catégorie de jeux, et un « œuf » correspond au modèle d'un jeu au sein de cette catégorie. Choisissez le « nid » Minecraft et l'« œuf » Paper. Paper est un fork hautement performant du serveur Java de Minecraft qui conserve le gameplay « vanilla » tout en ajoutant la prise en charge des plugins et de nombreuses corrections de performances, ce qui en fait souvent le premier choix. Ce même « nid » contient également des « œufs » pour Minecraft « vanilla », Forge, Bungeecord et Sponge.
Le fait de sélectionner l'œuf permet de remplir le reste du formulaire. La commande de démarrage est un java À cette ligne, l'image Docker est Java 25 par défaut, et quelques variables apparaissent en bas : la version de Minecraft, le nom du fichier JAR du serveur, un chemin de téléchargement et le numéro de build de Paper. Laissez latest dans les champs « Version » et « Build » ; le script d'installation télécharge alors la dernière version disponible. Sélectionnez « Créer un serveur ».
Le serveur télécharge-t-il Minecraft en ce moment même ?
Oui, et c'est le premier serveur d'un nœud qui prend le plus de temps. Wings récupère l'image d'installation et l'image Java, qui pèsent environ 800 Mo, puis exécute le script d'installation de l'egg dans un conteneur éphémère. Le script demande la dernière version au service de téléchargement de PaperMC, puis enregistre un fichier d'environ 53 Mio server.jar dans le dossier du serveur, et crée un fichier par défaut server.properties. Une fois les images transférées sur le nœud, une installation comme celle-ci ne prend qu'environ une minute.
Si l'installation se bloque ou si le fichier JAR est manquant par la suite, consultez le journal du nœud à l'aide de la commande journalctl -u wings et dans le conteneur de l'installateur avec docker logs. Une cause fréquente est liée au DNS au sein des conteneurs, ce que la partie 2 aborde dans sa note intitulée « Résolution d'un délai d'expiration ».
Démarrez le serveur et acceptez le CLUF
Une fois l'installation terminée, le serveur apparaît dans le tableau de bord de l'utilisateur. Ouvrez le tableau de bord du compte (la page accessible à l'adresse racine du panneau) : la liste affiche chaque serveur avec son adresse et son utilisation en temps réel. La barre colorée située à l'extrémité droite de chaque ligne indique l'état du serveur ; elle est verte lorsque le serveur est en marche.
Ouvrez le serveur pour accéder à la page de sa console. Celle-ci comporte une rangée de boutons de commande en haut à droite, la console au centre et une colonne de statistiques en temps réel à côté. Un serveur tout neuf étant hors ligne, la console est vide et la durée de fonctionnement indique « Hors ligne ».
Appuyez sur « Start ». La console affiche d'abord les messages du démon Pterodactyl, puis ceux du processus Java : Wings vérifie l'utilisation du disque, met à jour la configuration du processus, télécharge l'image Docker si elle est manquante, puis affiche java -version avant la commande proprement dite. Paper imprime ensuite sa propre version, qui était la 26.3 build 169 sur Java 25 au moment de la rédaction de cet article.
Accepter le CLUF de Minecraft
Le premier démarrage s'interrompt automatiquement, car Mojang exige que chaque propriétaire de serveur accepte le CLUF de Minecraft avant que le serveur ne soit lancé. Le processus « Paper » l'indique dans la console, puis le démon signale que le processus s'est arrêté. Le panneau détecte ce message et ouvre une boîte de dialogue contenant un lien vers le texte de la licence.
La console située derrière la boîte de dialogue affiche la ligne You need to agree to the EULA in order to run the server, suivie d'un message d'erreur indiquant un code de sortie 0 et la phrase Aborting automatic restart, last crash occurred less than 60 seconds ago. Aucun des deux ne pose de problème. Le code de sortie 0 signifie que Paper s'est arrêté volontairement, et le démon ne tente pas de le redémarrer.
Sélectionnez « J'accepte », et le panneau affiche le message suivant : eula=true en eula.txt et redémarre le serveur tout seul. Cette fois-ci, Paper crée le monde, ce qui prend environ une demi-minute sur une petite machine, et termine par la ligne que tous les administrateurs de Minecraft attendent avec impatience :
Les statistiques affichées à côté de la console indiquent la consommation réelle du serveur : 1,06 GiB de mémoire sur une limite de 2 GiB et 222 MiB d'espace disque, le processeur étant inactif. Ce sont ces chiffres qu'il faut surveiller lorsque vous déterminez le nombre de serveurs qu'un nœud peut héberger.
Exécuter des commandes depuis la console
La ligne de saisie située sous la console envoie le texte directement vers l'entrée standard du serveur Minecraft, exactement comme si vous l'aviez saisi dans un terminal sur cette machine. La commande list affiche la liste des utilisateurs connectés, et say diffuse un message à tous les joueurs.
La réponse 0 of a max of 20 players online montre également les valeurs par défaut d'un nouveau server.properties: 20 emplacements de joueurs et le port de jeu standard. Un joueur peut désormais ajouter l'adresse de la machine à la liste multijoueur d'un client Minecraft Java Edition, et la liste des serveurs l'affiche avec le message du jour par défaut, A Minecraft Server.
Avant d'inviter des joueurs : assurez-vous que leur client Minecraft Java utilise la même version du jeu que le serveur. Pour vérifier cela, consultez la version indiquée dans les premières lignes de la console de Paper ; ici, il s'agissait de la version 26.3. En effet, un client utilisant une version différente sera refusé, à moins que vous n'ajoutiez un plugin permettant de traduire les protocoles.
Modifier les fichiers et les paramètres de démarrage
L'onglet « Fichiers » est un gestionnaire de fichiers Web qui lit et écrit dans le dossier du serveur, que le démon conserve dans /var/lib/pterodactyl/volumes sur le nœud. Il affiche les fichiers créés par Paper lors du premier démarrage : les world dossier, plugins, server.properties, ainsi que les fichiers de configuration de Paper et de Bukkit. Il suffit de cliquer sur un fichier pour ouvrir un éditeur ; modifier le message du jour ou la limite du nombre de joueurs ne prend donc que quelques secondes, et un redémarrage suffit pour appliquer la modification.
L'onglet « Démarrage » regroupe les paramètres que le propriétaire peut modifier sans toucher à l'œuf. Il affiche la commande de démarrage, un sélecteur d'images Docker et les variables issues du formulaire de création.
Deux paramètres méritent ici une attention particulière. Remplacer latest dans une version de Minecraft portant un numéro précis, telle que 1.21.11, si les joueurs doivent s'en tenir à une seule version, car la réinstallation du serveur avec latest télécharge la version la plus récente disponible ce jour-là. La liste des images Docker propose également des versions plus anciennes de Java ; une version de Minecraft nécessitant une version plus ancienne de Java doit donc utiliser l'image correspondante.
Le dernier onglet qu'il convient d'ouvrir à présent est « Réseau ». Il répertorie l'attribution utilisée par ce serveur, indiquée comme « Primaire », et c'est à cet endroit que la partie 4 de ce guide remplace l'adresse de la machine par une adresse IPv4 routée.
En résumé
- Pour créer un serveur, il faut choisir un nœud, une allocation, des limites de ressources et un « egg ».
- L'« egg » télécharge le jeu dans un conteneur d'installation compact, et le premier serveur d'un nœud est le plus lent en raison du téléchargement des images.
- Le panneau affiche le CLUF de Minecraft dans une boîte de dialogue lorsque le serveur s'arrête à ce stade, et le fait de l'accepter relance le serveur.
- Les onglets « Console », « Fichiers » et « Démarrage » permettent d'effectuer les tâches d'administration quotidiennes sans avoir à utiliser un shell sur la machine.
Dans la section suivante, vous allez héberger un jeu différent sur le même nœud en important un « egg » de la communauté.