Configurer un serveur de ressources Minecraft (Spigot) via docker

La vraie valeur de WSL2

ヾ (・ ω <) ノ "Trois-trois-trois ● Ⅱ Ⅲ Korokoro ♪

------------------- ↓ Cliquez ici pour côté ↓ -------------------

Minecraft Depuis combien d'années l'avez-vous touché? (Quand le bateau s'est cassé dès qu'il a heurté) Je me souviens d'avoir arrêté parce que la plante grimpante a détruit le bâtiment que j'ai créé.

J'ai décidé de le toucher après un long moment, Quoi qu'il en soit, je veux pouvoir me déplacer entre les serveurs sur plusieurs serveurs, Minecraft Commencez à jouer pour configurer un serveur (Que fais-tu (・ ω ・))

WSL2 est inclus, Installons-le sur Linux. Il semble y avoir une construction, alors utilisons docker. Rendons MOD disponible. Configurons plusieurs serveurs. Et le cahier des charges est devenu gourmand, Seul le temps passera.

J'ai réussi à le mettre en forme, alors je vais le laisser ici.


------------------- ↓ Le sujet principal commence ici ↓ -------------------

Préparation préalable

Naturellement, installez Minecraft. Je pense que Java Edition (version Windows) est bien. (Ce n'est pas gratuit!)

On suppose que WSL2, Ubuntu et docker sont inclus. Regardez aussi ici.

WSL2 + docker + PHP Windows development environment construction (1) WSL2 edition WSL2 + docker + PHP Windows development environment construction (2) docker edition

Succès si la commande suivante est transmise à partir de PowerShell

PS C:\> wsl -d Ubuntu-20.04
$ docker --version
Docker version 19.03.13, build 4484c46d9d

Couper le répertoire pour le stockage des données

$ mkdir ~/minecraft_data

Génération de conteneurs à partir de docker

Il semble y avoir un serveur MOD appelé Spigot. (Je ne comprends pas) Vous pouvez trouver un autre docker à broche, Ceci est adopté car il semble qu'il ne peut être défini qu'avec des paramètres pour ceux qui sont souvent utilisés

itzg/minecraft-server

$ docker run -d -v ~/minecraft_data:/data -p 25565:25565 -e TYPE=SPIGOT -e EULA=TRUE --name mc itzg/minecraft-server
#Spécification du plugin-e MODS=http://hogehoge.com/plugin01.jar,http://hogehoge.com/plugin02.jar
#Spécification de la valeur de la graine-e SEED=7314490960418706833

Cela démarre rapidement, mais Il faut des téléchargements supplémentaires, la génération de biome, etc. Attendez environ 3 minutes (˘ω˘) Alors ...

Confirmation de démarrage

Démarrez Minecraft et essayez de vous connecter avec "Connexion directe" depuis le mode multijoueur.

Minecraft 1.16.3 2020_10_09 9_04_25_r.png

Minecraft 1.16.3 2020_10_09 9_04_13_r.png

Minecraft 1.16.3 2020_10_09 9_14_31_r.png

Vérifiez la connexion.

Minecraft 1.16.3 - Multiplayer (3rd-party Server) 2020_10_09 15_32_31_r.png

J'ai une bonne connexion (`・ ω ・ ´)

Une autre génération mondiale

Ajouter un plug-in

J'écrirai plus tard une explication détaillée sur le plug-in. Je n'écrirai que ce dont j'ai besoin ici.

$ docker stop mc
$ cd ~/minecraft_data/plugins
$ wget http://ci.onarandombox.com/job/Multiverse-Core/Release%20Build/artifact/target/Multiverse-Core-4.2.2.jar #Gestion multi-mondes
$ wget http://ci.onarandombox.com/job/Multiverse-Portals/Release%20Build/artifact/target/Multiverse-Portals-4.2.0.jar #Se déplacer entre les mondes
$ wget https://ci.lucko.me/job/LuckPerms/lastStableBuild/artifact/bukkit/build/libs/LuckPerms-Bukkit-5.1.107.jar #Gestion des autorisations des plugins
$ docker start mc

(˘ω˘) Alors ...

(゚ д ゚) Hah!

Ajustement des autorisations de plug-in

Si le nom d'utilisateur est Dozo

$ docker exec -i mc rcon-cli
> lp user Dozo permission set luckperms.* true
> lp user Dozo permission set minecraft.command.* true
> lp user Dozo permission set multiverse.* true
> ^C (ctrl+c)

Pas de réponse de la console, mais c'est bien tant que le nom d'utilisateur est correct

Connectez-vous à Micra et exécutez la commande suivante

/gamerule doDaylightCycle false

Succès si tu peux le faire Ceci est une commande d'arrêt du temps qui empêche la nuit de venir et d'être tué par des zombies en travaillant

Génération mondiale

Maintenant que tout est prêt, appelons cela la génération mondiale. Il peut être généré sur rcon-cli, Je ne le sens pas vraiment, alors je vais le faire sur Micra

/mv create asset NORMAL
Starting creation of world 'asset'...
Complete!

Cela a créé un nouveau monde nommé asset Se déplacer est la commande suivante

/mvtp asset

Quand j'essaye de créer un néant et de le déplacer

Minecraft 1.16.3 - Multiplayer (3rd-party Server) 2020_10_10 12_58_03_r.png

Bien! C'est un succès! (`・ Ω ・ ´)


------------------- ↓ Cliquez ici pour le post-scriptum ↓ -------------------

Paramètres du plug-in

Il y a des plugins dans le répertoire de stockage, En plaçant ici le fichier de plug-in prédéfini (jar) Vous pouvez ajouter des plugins Le ** répertoire de stockage de données ** qui était un peu au début de l'article est utile ici.

Le flux est de cloner et de construire avec maven, Il est plus facile et meilleur d'utiliser directement le pré-construit.

Le créateur du plug d'écriture semble avoir publié Jenkins, Empruntons à partir de là. À ce moment-là, obtenez de *** stable build *** au lieu de la dernière version

Multiverse-Core [Jenkins] - Vivaldi 2020_10_09 12_43_58_rr.png

Multi-monde

Multiverse

Multiverse was created at the dawn of Bukkit multiworld support. It has since then grown into a complete world management solution including special treatment of your nether worlds with Multiverse NetherPortals.

In the second delivery of Multiverse, we've broken it up into several smaller plugins that are each feature packed but not bloated! Multiverse provides the easiest to use world management solution for your Minecraft server, big or small, and with great addons like Portals and NetherPortals, what's not to love!

Multiverse is here and works for the latest server build! Is your server a Multiverse? https://dev.bukkit.org/projects/multiverse-core/

Un plug-in qui gère plusieurs serveurs. Vous pouvez profiter des avantages de plusieurs serveurs tels que la création de mondes, leur recréation et le déplacement entre les serveurs. Divers plug-ins

Nom Détails Jenkins URL
Multiverse-core Système central multi-serveurs http://ci.onarandombox.com/view/Multiverse/job/Multiverse-Core/
Multiverse-Portals Créer un portail pour se déplacer entre les serveurs http://ci.onarandombox.com/view/Multiverse/job/Multiverse-Portals/
Multiverse-NetherPortals Pour le néant ci-dessus http://ci.onarandombox.com/view/Multiverse/job/Multiverse-NetherPortals/
Multiverse-Inventories Gestion des stocks entre les serveurs http://ci.onarandombox.com/view/Multiverse/job/Multiverse-Inventories/

Dois-je tout mettre de toute façon?

$ cd ~/minecraft_data/plugins
$ wget http://ci.onarandombox.com/job/Multiverse-Core/Release%20Build/artifact/target/Multiverse-Core-4.2.2.jar
$ wget http://ci.onarandombox.com/job/Multiverse-Portals/Release%20Build/artifact/target/Multiverse-Portals-4.2.0.jar
$ wget http://ci.onarandombox.com/job/Multiverse-NetherPortals/Release%20Build/artifact/target/Multiverse-NetherPortals-4.2.1.jar
$ wget http://ci.onarandombox.com/job/Multiverse-Inventories/Release%20Build/artifact/target/Multiverse-Inventories-4.2.1.jar

Cliquez ici pour les paramètres de génération mondiale https://github.com/Multiverse/Multiverse-Core/wiki/World-properties

La commande est sur Micra ou RCON.

$  docker exec -i mc rcon-cli
> mvlist
§d====[ Multiverse World List ]====
§fworld§f§f - §aNORMAL
§fworld_the_end§f§f - §bTHE_END
§fworld_nether§f§f - §cNETHER

> mv create asset NORMAL
Starting creation of world 'asset'...
Complete!

> mv modify set weather false asset
§aSuccess!§f Property §bweather§f was set to §afalse

> mvrule doDaylightCycle false asset
§aSuccess!§f Gamerule §bdoDaylightCycle§f was set to §afalse§f.

> mv modify add creeper monsters asset
§aSuccess! §bcreeper§f was §cremoved from §amonsters

> mv create farm NORMAL -t FLAT
Starting creation of world 'farm'...
Complete!

> mv modify set gamemode creative farm
§aSuccess!§f Property §bgamemode§f was set to §acreative

> mv modify set difficulty hard farm
§aSuccess!§f Property §bdifficulty§f was set to §ahard

> mv modify set hunger false farm
§aSuccess!§f Property §bhunger§f was set to §afalse

Gestion des serveurs

LuckPerms

LuckPerms is a permissions plugin for Minecraft servers. It allows server admins to control what features players can use by creating groups and assigning permissions. https://luckperms.net

Plugin qui gère les autorisations du serveur, etc.

Nom Détails Jenkins URL
LuckPerms https://ci.lucko.me/job/LuckPerms/
$ cd ~/minecraft_data/plugins
$ wget https://ci.lucko.me/job/LuckPerms/lastStableBuild/artifact/bukkit/build/libs/LuckPerms-Bukkit-5.1.107.jar

Le plugin LuckPerms ne définit pas un utilisateur administrateur par défaut, donc Après le redémarrage, accédez à la console Minecraft et enregistrez-vous en tant qu'utilisateur. Si le nom d'utilisateur est Dozo

$ docker restart mc
$ docker exec -i mc rcon-cli
> lp user Dozo permission set luckperms.* true
ctrl+C

Je ne sais pas si c'est un bug, mais il n'y a pas de réponse quand j'y entre, Cela fonctionne correctement. Connectez-vous avec le client pour vérifier l'opération

/lp editor

Minecraft 1.16.3 - Multiplayer (3rd-party Server) 2020_10_09 20_50_45_r.png

Si vous cliquez sur l'URL fournie pour y accéder, vous serez redirigé vers l'interface utilisateur Web pour modifier les autorisations. Différents réglages peuvent être effectués. Pour le moment, c'est comme régler cela et faire des ajustements fins.

nom de groupe Autorité
Admin minecraft.command.ban minecraft.command.pardon some.cool.admin.perm someplugin.vanish
Mod minecraft.command.mute minecraft.command.unmute some.cool.mod.perm chatcolor.bold
Default minecraft.command.say minecraft.command.me

référence: Using WSL2 in a Docker Linux container on Windows to run a Minecraft Java Edition

Recommended Posts

Configurer un serveur de ressources Minecraft (Spigot) via docker (2)
Configurer un serveur de ressources Minecraft (Spigot) via docker
Configurer un serveur Samba avec Docker
[Partie 1] Configurons un serveur Micra sur Linux
Configurer un serveur de messagerie avec Twisted
Configurer un serveur HTTPS simple avec Python 3
Configurer un serveur HTTPS simple avec asyncio
Configurez un serveur SMTP de test en Python.
Configurer un serveur UDP en langage C
Configurer un serveur local avec le téléchargement Go-File-
Comment configurer un serveur de développement local
Configurer un serveur SMTP simple en Python
Configurer un serveur local simple sur votre Mac
Configurez un serveur gratuit sur AWS en 30 minutes
[Vagrant] Configurer un serveur API simple avec python
Configurer un serveur Web avec CentOS7 + Anaconda + Django + Apache
Créer un serveur Flask avec Docker
Envoyez du courrier avec mailx à un serveur SMTP factice configuré avec python.
Configurez un serveur Web local en 30 secondes en utilisant http.server en python 3
Configurer un serveur qui traite plusieurs connexions en même temps
Démarrez un serveur Web Python simple avec Docker
Je veux configurer un serveur fictif pour python-flask en quelques secondes en utilisant swagger-codegen.
Configurer un serveur de fichiers utilisant la samba avec ZeroPi de Friendly Arm [Articles achetés]
Configurer un serveur de fichiers utilisant la samba avec ZeroPi de Friendly Arm [Importation personnelle]