Wie kann ich zwei Minekrüft server gleichzeitig laufen lassen?

3 Antworten

Du kannst die Server-Applikationen jeweils in Containern laufen lassen, bspw. Docker. Damit sind sie isoliert voneinander und jeder hat seine eigene Java-Laufzeit-Umgebung und ist glücklich.

Willst du die gleichzeitig laufen lassen, gibt es noch ein Problem mit dem Zugriff, aka: woher weiß das Betriebssystem, welche Instanz gerade gemeint ist? Das kann man verschieden lösen, und dafür kenne ich mich mit Minecraft konkret zu wenig aus um einschätzen zu können, welche davon sinnvoll ist:

  1. Ansprechen über Subdomains, sodass diese jeweils dem entsprechenden Prozess / Port zugewiesen werden. Das macht man in Docker über Port-Mapping.
  2. Über verschiedene Ports laufen lassen. Beide Minecraft-Server wollen denselben Netzwerk-Port für sich haben. Du kannst versuchen einzustellen, dass diese jeweils andere Ports benutzen - ob die Server und die Clients das allerdings akzeptieren: keine Ahnung.
  3. Du kannst einen zweiten Server aufsetzen und dort das jeweils andere laufen lassen. Geht ja bei den meisten Hostern sehr schnell. Teilweise kann man die Server dann auch wieder abstellen, sodass man nur für den belegten Festspeicher zahlt.

DieFreistunde  14.04.2023, 15:48

Du denkst zu kompliziert und auch etwas zu fortgeschritten ;D.

Minecraft Instanzen sind nichts weiter als Terminals mit einer Java VM dahinter. Du kannst also hunderte Java VM's über Screen erstellen und Managen.

0
julihan41  14.04.2023, 15:51
@DieFreistunde

Gut zu wissen.

Dafür muss man sich aber mit Screen und Java auskennen :D

Wie funktioniert das über die Ports? Oder ist hier wirklich der Fall "Gleichzeitig Laufen" nicht gefragt?

1
DieFreistunde  14.04.2023, 15:53
@julihan41

Minecraft verwendet einen einzigen (je nach Konfiguration auch 2) Port: 25565

Dieser kann vor der eigentlichen Installation geändert werden auf jeden X beliebigen Port. Viele fangen so bei 40000 an um nicht mit anderen Ports in die Quere zu kommen. Du kannst also ohne Probleme über 100 Server erstellen.

Java kümmert sich dann um den Rest.

0
julihan41  14.04.2023, 15:54
@DieFreistunde

Und die Clients? Akzeptiere die bei Minecraft einen anderen Port? Ist ja schließlich proprietäre Software, die sich meist nicht umbiegen lässt.

0
DieFreistunde  14.04.2023, 15:58
@julihan41

In einem "professionellem" Setting würdest du einen Bungee cord (Proxy) verwenden, welcher auf den Standard Port 25565 hört. Die clients verbinden sich dann auf die Domain unter dem Standard Port.

Der eigentliche Minecraft Server jedoch kann eine random IP haben. 45589, um Mal was zu haben, könnte einer haben. Der proxy managed dann die Interne Weiterleitung und Verweisung der einzelnen Server, so dass jeder Server untereinander verbunden ist.

Aber so Prosperitär ist Minecraft gar nicht. Zumindest die Java Version. Da kannst du ohne Probleme jede IP und jeden Port verwenden, den du willst. Auch Lokal. Versteht sich

1

Istallier doch einfach Java 8 (für Minecraft 1.8) und Java 16 bzw. 17 für (Minecraft 1.19) und verwende beide Versionen gleichzeitig.

Ein Linux Server kann mehrere Java Version gleichzeitig Installiert haben und auch verwenden. Es muss eben nur eine Standard Version ausgewählt werden die von der Software verwendet werden kann. Da würde ich einfach die höhere nehmen da sicherer und neuer.

Ansonsten kannst du dann im Start script

anstatt: 'Java -Jar'

einfach: '(Pfad zu Java 8) -Jar')

Verwenden und der 1.8 Server startet mit Java 8 und der 1.19 Server mit Java 17


TristanCool 
Fragesteller
 14.04.2023, 15:54

Danke bist ein cooler Macher funktioniert jetzt küsse dein Herz bruder

0

Du könntest ihn über ein anderes Konto laufen lassen.

LG

Woher ich das weiß:eigene Erfahrung – Ich zocke gerne :)

TristanCool 
Fragesteller
 14.04.2023, 15:28

Ja dachte ich mir schon, jedoch möchte ich ihn über den selben Server laufen lassen. Weil ich nicht noch eine weitere Minecraft VM machen will

1