Minecraft Bedrock Server 1.20 auf Synology NAS installieren


Dedizierter Bedrock Server auf einem Synology NAS

Wer einen Minecraft Bedrock Server für iOS, Android, Windows, PlayStation 4 und Xbox One auf seinem Synology NAS hosten möchte, kann dies nun tun. Die Minecraft Java-Version bietet allerdings immer noch mehr Features wie Unterstützung durch Overviewer und macOS. Die Bedrock-Edition wird immer populärer und somit interessanter und man sollte sich alle Wege offen halten. Vor allem, weil Mojang seit Dezember 2018 eine offizielle dedizierte Server Software für Ubuntu und Windows anbietet. Deswegen lernen wir nun, wie wir einen Bedrock-Server auf einem Synology NAS installieren.

Was wird benötigt?

  • Synology NAS mit Docker-Support (z.B. DS218+ kaufen)
  • Kompatible Arbeitsspeicherweiterung (z.B. 8GB DDR3-RAM kaufen)
  • Einen Router mit Port-Forwarding (z.B. FritzBox 7590 kaufen)
  • 5 Minuten eurer Zeit

Kompatibilität der Minecraft Clients mit den Servern

Der Server der neueren Bedrock-Edition läuft viel performanter als der Java-Edition. Die Bedrock-Edition findet sich auf den Konsolen und mobilen Geräten wieder. Dafür ist der dedizierte Bedrock-Server noch in der Alpha-Phase seitens Mojang und erlaubt keine Mods. Außerdem wurde der Server nur für x86-Architektur kompiliert. Das heißt: Es gibt keinen performanten Bedrock-Server für z.B. den ARM-basierten Raspberry Pi. Clientseitig fehlt dem Bedrock-Server die Unterstützung für die Nintendo Switch und macOS. Unglaublich aber wahr: für den Mac zudem keinen Bedrock-Edition Client.

ClientBedrock ServerJava Server
Android
iOS
XBOX ONE
Nintendo Switch
PS4
XBOX 360
PS3
Windows 7/8/10 Java
Windows 10 Bedrock
Linux
macOS
Welcher Client kann sich mit JAVA oder Bedrock Servern verbinden?
Andy's Xbox ONE und mein iPhone auf dem meinem Bedrock Server
Andy’s Xbox One in Köln und meine iPhone-Version in Hannover auf dem Synology Bedrock Server

Anleitung Schritt für Schritt

Schritt 1: Installieren von Docker

Über die Paketverwaltung vom DiskStation Manager installieren wir nun Docker. Wenn Docker dort nicht auftaucht, dann ist deine DiskStation damit leider nicht kompatibel. Ein günstiger Einstieg ist das DS218+ (kaufen).

Bedrock Server Docker Image im Synology Repository
Bedrock Server Docker Image im Synology Repository

Schritt 2: Erstellen eines Ordners

Der Server braucht einen Speicherort auf der DiskStation in dem die Konfigurationsdateien und vor allem die Map liegt. Dafür legt man einen neuen Ordner im nun vorhanden Shared Folder „docker“ an. Das hat den Vorteil, dass dort alle Rechte bereits vergeben sind.

Schritt 3: Runterladen des Dockerimages

In Docker selber suchst du nun in der Registry nach „MarcTV“ und wählst das Image „Minecraft Bedrock Server“ aus und lädst es runter. Das Image kann auch auf Docker Hub heruntergeladen werden.

Schritt 4: Konfigurieren des Docker Containers

Nachdem wir das Image heruntergeladen haben, kann es nun als Container konfiguriert und gestartet werden. Folgende Einstellungen sollten hier vorgenommen werden:

Docker resource limitation

  • CPU priority: high
  • Memory Limit: 50 % des Arbeitsspeichers im NAS

Advanced Settings

  • Enable auto-restart: yes

Volume

  • Folder: Das shared folder aus Schritt 1 hier auswählen
  • Mount path: /bedrock-server/worlds

server.properties

  • File/Datei und nicht Ordner: die lokale Konfigurationsdatei für den Server. Kopiert einfach diese hier lokal ins NAS.
  • Mount path: /bedrock-server/server.properties

allowlist.json

  • File/Datei und nicht Ordner: die lokale allowlist.json für den Server. Kopiert einfach diese hier lokal ins NAS.
  • Mount path: /bedrock-server/allowlist.json
So sieht der mount path mit server.properties Datei (NICHT Verzeichnis!) aus.
So sieht der Mount Pfad mit server.properties Datei aus.

Port Settings

  • Local Port: 19132 TCP
  • Container Port: 19132 TCP
  • Local Port: 19132 UDP
  • Container Port: 19132 UDP
Korrektes Port-Mapping für Docker

Allowlist und Adminrechte

Auf dem Terminal des Synology Docker Containers könnt ihr Befehle ausführen. Zum Beispiel jemanden auf die allowlist setzen:

whitelist add MarcTV

Fügt einen Nutzer in die allowlist.json hinzu. Überprüft hier, ob der Benutzer auch wirklich in der Datei eingetragen wurden.

Ihr könnt einem Nutzer auch Adminrechte geben. Dies funktioniert nur, wenn der entsprechende Nutzer online ist.

op MarcTV // Adminrechte für den Usernamen
deop MarcTV // entfernen der Adminrechte
Die /op Befehle funktionieren nur, wenn der User online ist

Schritt 5: Starten des Servers

Nun muss man den Server nur noch starten und er ist im lokalen Netzwerk verfügbar. Das Starten selber dauert beim ersten Mal ca. 3 Minuten. Danach ist er nach wenigen Sekunden jederzeit verfügbar und gestartet. Nun sollte er im Spiel erscheinen. Unter Umständen muss in der Firewall des NAS selber die Ports geöffnet werden: „Control Panel > Security > Firewall > Edit Rules“ den Docker Server für UDP und TCP freigeben.

Schritt 6: Freigeben des Servers über das Internet

Ich nutze eine Fritz!Box. Dort kann man unter den Einstellungen Internet > MyFritz-Konto eine Adresse einrichten, über die man die Fritz!Box außerhalb des eigenen Netzwerks erreichen kann.

Unter Internet > Freigaben > Gerät für Freigaben hinzufügen > [Gerät auswählen] > Neue Freigabe > MyFritz Freigabe > andere Anwendung und dort den Port „19132“ per TCP und UDP freigeben.

UDP und TCP Freigaben in einer Fritz.Box 7590
UDP und TCP Freigaben in einer Fritz.Box 7590 (kaufen)

Hinweis für IPv6 Kunden

Viele Router laufen schon über IPv6 oder DS-Lite. Das bedeutet, dass die Portfreigabe komplizierter ist. Einfacher ist es beim Internetprovider anzurufen und sagen, dass man gerne auf eine IPv4 Anbindung wechseln möchte. Die Begründung sollte sein, dass IPv4 für einen beruflichen Dienst benötigt wird. Danach schaltet man unter „Internet“ -> „Zugangsdaten“ -> „IPv6“ auf „native IPv4 Anbindung“ um und erstellt dann die Portfreigabe.

Häufig gestellte Fragen

Wie verbindet man sich mit der PlayStation oder Xbox?

Lokal funktioniert die Verbindung auf den Server auf der PlayStation und XBOX ONE ohne Probleme. Über das Internet muss man Phantom benutzen.

Wie konvertiere ich eine Minecraft Java-Karte für Bedrock

Das Tool MCC Toolchest PE kann zur Konvertierung von Java-Karten zur Bedrock-Edition genutzt werden. Nicht verwechseln mit Tool MCC Toolchest ohne PE im Namen. Dafür öffnet man eine Bedrock-Edition Karte und wählt im Kontextmenü Tools > Convert > From Java und wählt die Java-Karte. Anschließend speichern nicht vergessen.

Der Bedrock-Server braucht deutlich weniger Leistung als der Paper-Java-Server

Wie hoch ist die CPU-Last?

Während der Bedrock-Server sehr genügsam ist und selten über 5 % CPU Last verursacht, sorgt der Paper-Server schnell für 25 % und mehr CPU-Last. Da der Java-Server eine Single-Thread-Anwendung ist, wird bei einer Quad-Core-CPU wie in dem Synology DS420+ (kaufen) nur ein Viertel der vorhandenen Leistung genutzt. Bei mir geht die Leistung manchmal auch auf über 35 % CPU-Last. Das liegt entweder am Boost-Mode der CPU oder daran, dass der Paper-Server neben dem Haupt-Thread noch andere Dinge berechnet.

Wie aktualisiere ich die Docker Container automatisch?

Man kann Docker Container auch automatisch mit Watchtower aktualisieren. Das bietet sich vor allem bei mehreren laufenden Containern an. Sonst kann es passieren, dass sich die Client nicht mit dem Server verbinden können, weil die Versionen nicht übereinstimmen.

Wie installiere ich Plug-ins und Mods für die Bedrock-Edition?

Für die Bedrock-Edition sind mir keine Plug-ins und Mods bekannt. Wenn das wichtig ist, sollte man sich eher für den Server für die JAVA-Version von Minecraft entscheiden. Wenn es sie doch geben sollte, kann man sie auf dem lokalen Ordner auch installieren. Denn der gesamte Server abzüglich der Linux-Umgebung befindet sich außerhalb des Containers. Jedenfalls, wenn die Anleitung korrekt befolgt wurde.

Läuft der Bedrock-Server auch auf einem Raspberry Pi 4?

Die Bedrock-Server Software gibt es aktuell nur für x86-CPU Architekturen wie von Intel und AMD. Der Raspberry Pi 1 bis 4 nutzt einen ARM Prozessor. Es ist deswegen nicht sinnvoll möglich einen Bedrock-Server auf einem Pi zu betreiben. Deswegen ist diese Anleitung für ein Synology NAS mit einer Intel CPU und Docker angelegt.

Warum sagt Minecraft, dass der Server veraltet ist?

Microsoft und Mojang aktualisieren ihren Server auf deren Webseite meistens verspätet. Mein Docker Container ruft automatisch die neuste Version zweimal am Tag ab und baut daraus automatisch den Container. Bevor Du fragst, wann der Container das nächste Mal aktualisiert wird, schaue, ob überhaupt eine neue Version auf der Webseite bereitsteht.

Die Zukunft

Ich werde unseren Minecraft Java Server unter mc.marc.tv so lange weiter nutzen, bis alle der folgenden Bedingungen erfüllt sind:

  1. Mojang stellt die Unterstützung der Java-Version ein.
  2. Bedrock-Edition erscheint für macOS.
  3. Xbox One ,PS4 und Nintendo Switch erhalten offiziellen Support für dedizierte Server ohne Phantom.
  4. Overviewer generiert isometrische Ansichten von Bedrock-Karten

Das Eintreten aller dieser Bedingungen ist sehr unwahrscheinlich. MOJANG möchte mit den kostenpflichtigen „Realms“ Geld verdienen.

This is an early release (alpha) which we don’t fully support yet. It might contain severe issues, and we could stop supporting it at any time.

MOJANG Anfang 2019 über ihren Bedrock Server

Wenigstens gibt es einen Migrationspfad auf Bedrock der heute schon funktioniert. So hält man sich alle Optionen offen. Durch den Alpha-Status bleibt nun alles bei der Java-Version für unseren aktuellen Minecraftserver.


Beitrag veröffentlicht

in

von

Kommentare

359 Antworten zu „Minecraft Bedrock Server 1.20 auf Synology NAS installieren“

  1. Avatar von Marko
    Marko

    Die 8GB Ram sind gerade Aktion für 52% günstiger für Prime Mitglieder :)

    1. Avatar von Marc
      Marc

      Hi!

      Ich habe sie aber auch nur für 10 EUR mehr gekauft. Hier der Link zu amazon

  2. Avatar von Jörg
    Jörg

    Hallo Marc, gleich mal vorausgeschickt: ich kenne mich mit Minecraft überhaupt nicht aus, und versuche, den Server für meine Kinder bereitzustellen. Die Installation auf auf einer DS216+II mit 8 GB RAM funktioniert problemlos, die Zugänglichkeit der Fritzbox ist über VPN auch kein Problem und man kann sich tatsächlich auch von einem iPad auf den Bedrock-Server der Diskstation verbinden. Soweit also, so gut. Nun meine Fragen: 1) wie kann man einen Spieler als Administrator der Welt definieren, alle Teilnehmer haben immer nur normalen „member“-Status. Ich habe es mit einer permissions.json versucht, aber die wird entweder nicht gelesen, oder ich habe es falsch geschrieben (ich muss zugegeben, da auch noch keine Beispieldatei von gesehen/gefunden zu haben); 2) wie kann man die Monster ausschalten, bzw. sonstige Spielparameter verändern; 3) läßt sich, und wenn ja wie, ein Paßwort für die Welt/den Server vergeben?
    Das erst mal die Fragen für den Anfang. Vielen Dank auf alle Fälle schon mal für das Bereitstellen des Docker-Containers und der Anleitung, ich würde mich freuen, wenn Du als jemand mit mehr MC-Erfahrung mir die Fragen beantworten könntest.

    1. Avatar von Marc
      Marc

      Hi,

      bitte mal prüfen ob die Karte beim Spielen außerhalb des Containers wirklich verändert wird. Die config Dateien sind eigentlich selbsterklärend. Wenn sie aber nicht vom Server nach einem Neustart genutzt werden, dann ist das schlecht.

      Als Tipp: lieber den Java Server nehmen. Der ist deutlich stabiler.

    2. Avatar von Jörg
      Jörg

      Ich habe mal etwas die Suchmaschinen bemüht. Es scheint wohl so zu sein, daß der Bedrock-Server eine alpha-Version der Software ist, wie Du im Text ja auch schon angemerkt hast, und daß deshalb die Konfigurationsdateien server.properties und permissions.json nicht ausgelesen werden. D.h. alle Spieler haben immer nur „member“-Status und man kann auch nicht in den creative-Modus wechseln.
      Oder hast Du da anderes beobachtet? Deinen anderen Container hatte ich zuerst ausprobiert, da kamen die Kinder dann aber mit den Tablets nicht drauf. In den Kommentaren zum anderen Container bin ich dann auf den Bedrock Server gestoßen, damit funktioniert die Verbindung und das Spielen, aber in den vorher genannten Grenzen.
      Vielen Dank aber nochmal für die Mühe.

    3. Avatar von Marc
      Marc

      Hi, das ist nicht ganz richtig:

      Ich konnte ohne Probleme in meiner server.properties der Bedrock-Edition in meinem Image die Parameter ändern. Ich spiele gerade im creative mode. Kein Problem. Deswegen noch mal die Frage: Sicher, dass du die Dateien außerhalb des Containers gelegt hast ? Denn nur so kannst du sie editieren.

  3. Avatar von Jörg
    Jörg

    Ich meine eigentlich schon. Die Dateien kann ich editieren, sie liegen im Grundverzeichnis „mcserver“. Das ist doch außerhalb des Containers, oder?
    Auf die Dateien habe ich dann im Container-Setup links gelegt:

    file: mcserver/server.properties, mount path /bedrock-server/server.properties
    file: mcserver/permissions.json, mount path /bedrock-server/permissions.json
    folder: mcserver, mount path /bedrock-server/worlds

    Ist das soweit richtig?

  4. Avatar von Jörg
    Jörg

    Mein Environment-Tab sieht allerdings anders aus. Ich habe da von Hand MEMORYSIZE 3G eingetragen, bei LD_LIBRARY_PATH steht ein Punkt „.“ drin, und bei PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

    Sonst sind da keine Einträge. Die Einträge wie sie oben in der Anleitung zu erkennen sind, hatte ich beim Paperserver.

    1. Avatar von Marc
      Marc

      Hier in der Anleitung steht:

      server.properties

      Die musst du mounten.

  5. Avatar von Jörg
    Jörg

    Ist das so nicht richtig?
    file: mcserver/server.properties, mount path /bedrock-server/server.properties

    Im Logfile des Containers sehe ich übrigens durchaus das da anstelle von Creative beispielsweise Adventure steht, wenn ich da was ändere. Das kommt bloß auf dem Tablet nicht an. Da ist jeder Spieler nur member und alle Funktionen sind ausgegraut.
    Wenn ich den Bedrock-Server auf einem alten PC mit Windows 10 laufen lasse geht das, und die Spieler sind Operatoren und können sich Optionen zu oder abschalten.

    1. Avatar von Marc
      Marc

      Ja, so ist korrekt. Und wenn die Settings ankommen ist das auch gut. Auf dem iPhone bin ich dann aber schon j. Einer Art Creative mode. Ggf ist das eine Limitierung der Clients.

  6. Avatar von Jörg
    Jörg

    Die gleichen Clients können Operator-Rechte haben, wenn sie auf einen Bedrock-Server auf Windows 10 zugreifen, sind aber nur Member, wenn sie auf den Bedrock-Server auf der DS zugreifen. Die Welten lassen sich ja zwischen den beiden System durchaus übertragen.
    Gibt es da dann vielleicht einen Unterschied in den alpha-Versionen der Bedrock-Server?

    1. Avatar von Marc
      Marc

      Ds kann gut sein. Ich verfolge das Thema für mich auch erst weiter, wenn die drei Wünsche von mir erfüllt sind am Ende des Artikels.

  7. Avatar von Jörg
    Jörg

    Die Version auf dem Windows 10 Rechner ist allerdings die neuest verfügbare, also 1.11.2, die aus dem Docker-Container 1.11.0.23. Vielleicht macht das schon den Unterschied aus.
    Ich nehme an, es würde zu weit führen, mir zu erklären, wie man aus den offiziell verfügbaren Downloads für Ubuntu oder Windows einen Docker-Container baut, nicht wahr?

    1. Avatar von Marc
      Marc

      Das ist nicht weiter komplex:

  8. Avatar von Jörg
    Jörg

    Geht auch mit 1.11.2 in der Diskstation leider nicht. Die server.properties und die permissions.json werden leider ignoriert.
    Oder hast Du bei Deinen Versuchen mit der Diskstation etwas anderes beobachtet? Im Logfile stehen vielleicht Daten drin, aber die haben keinen Effekt bei mir.

  9. Avatar von Jörg
    Jörg

    Es liegt allerdings nicht an der Ubuntu 1.11.2 Version des Bedrock servers. Der verhält sich genauso, wie der WINDOWS 10 1.11.2 server. Ich habe Ubuntu 18.04 LTS auf einem Macbook in einer VirtualBox installiert und darin dann den Ubuntu 1.11.2 Bedrock server. Alle permissions und properties werden geladen und korrekt verarbeitet. iPads können auf den Server in der VirtualBox problemlos zugreifen, wie auch beim Windows 10 Rechner.
    D.h., das Problem mit den Einstellung liegt im Container oder in der Diskstation.

  10. Avatar von Jörg
    Jörg

    Dank des Herumspielend mit Ubuntu in der VirtualBox ist mir jetzt endlich klar geworden, woran es in der Diskstation hängt (oder jetzt besser gesagt: hing): unter dem Tab „Environment“ ist LD_LIBRARY_PATH falsch ausgefüllt gewesen. Da muß natürlich “ ./bedrock_server “ hinein, damit das funktionieren kann. Das füllt der Container nicht automatisch aus (und die Anleitung sagt das leider bisher auch nicht). Da bin ich aber auch erst drauf gekommen, weil ich das in Ubuntu zum Starten des Servers benutze.

    Auf alle Fälle vielen Dank für das Bereitstellen des Containers, und die freundliche Unterstützung. Die Kinder werden sich freuen.

    1. Avatar von Marc
      Marc

      LD_LIBRARY_PATH ist bei mir ebenfalls leer – und es funktioniert. Siehe oben der Screenshot. Wenn ich was an der server.properties ändere, dann wirkt sich das auf den Server aus. Außerdem kann ich die Karte austauschen. Also irgendwas machst du glaube ich falsch.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert