/MinecraftBedrockServer

Sets up a Minecraft Bedrock dedicated server on Ubuntu with options for automatic updates and running at startup

Primary LanguageShellMIT LicenseMIT

Minecraft Bedrock Server

Sets up a Minecraft Bedrock dedicated server on Ubuntu / Debian with options for automatic updates, backups and running automatically at startup
View installation instructions at: https://jamesachambers.com/minecraft-bedrock-edition-ubuntu-dedicated-server-guide/

Features

  • Sets up the official Minecraft Bedrock Server (currently in alpha testing)
  • Fully operational Minecraft Bedrock edition server in a couple of minutes
  • Ubuntu / Debian distributions supported
  • Sets up Minecraft as a system service with option to autostart at boot
  • Automatic backups when server restarts
  • Supports multiple instances -- you can run multiple Bedrock servers on the same system
  • Updates automatically to the latest version when server is started
  • Easy control of server with start.sh, stop.sh and restart.sh scripts
  • Optional scheduled daily restart of server using cron

UPDATE 12/10/2020 - Multiple instances are currently broken due to the Minecraft Bedrock Edition dedicated server opening up a set of ports it is not supposed to. Official bug is here on Mojang's official website here: https://bugs.mojang.com/browse/BDS-3989. This should fix itself eventually as it has nothing to do with this script but is in fact a bug in the server itself but for now be advised multiple instances don't work. Single instances of the server are still fine.

Installation Instuctions

To run the installation type:
wget https://raw.githubusercontent.com/TheRemote/MinecraftBedrockServer/master/SetupMinecraft.sh
chmod +x SetupMinecraft.sh
./SetupMinecraft.sh

Tested Distributions

  • Ubuntu / Ubuntu Server 20.04
  • Ubuntu / Ubuntu Server 18.04
  • Debian Stretch / Buster

Tested Platforms

  • All PC X86_64 (WORKING)
  • Udoo X86 (WORKING)
  • Intel Compute Stick (WORKING)
  • Other X86_64 platforms (WORKING)
    • ARM 64bit (BROKEN -- needs linker and other binaries used for emulation to be updated)
      • Raspberry Pi (BROKEN)
      • Tinkerboard (BROKEN)

RTX Beta Note

RTX has been released into normal Minecraft. If you had the RTX beta version you need to downgrade your Minecraft to the "normal" version for the dedicated server to work. Go into the "Xbox Insider" app and change back to the normal version of Minecraft and then uninstall your beta version and install the normal version.

Update History

  • December 13th 2020
    • RTX beta is now supported as long as you aren't on the "beta" channel anymore. Unenroll from the RTX beta and downgrade to normal Minecraft. RTX is in normal Minecraft now.
    • Fixed ARM support for Raspberry Pi, Tinkerboard, and others. Be warned, it's still very slow on ARM!
    • Updated depends.zip
  • December 10th 2020
    • Cleaned up documentation
    • Added notice that the RTX beta version of Minecraft's dedicated server has not been released yet. Support will be added the moment it is!
    • Added alpha software notice for Bedrock dedicated server per issue 34
  • November 17th 2020
    • Fixed server autoupdating in start.sh
    • Minecraft.net had made a change where the "--spider" parameter would return a 503 -- removed this to fix automatic updates
  • July 24th 2019
    • Fixed Raspberry Pi support
  • July 10th 2019
    • Fixed OpenSSL error in 1.12 (thanks obviator!)
    • Fixed ports not choosing defaultS if nothing is entered (thanks sweavo!)
  • July 2nd 2019
    • Added libcurl4 Bedrock server dependency to installer script to prevent server startup from failing
  • July 1st 2019
    • Added support for multiple servers
    • Choose the folder name and port for the server in SetupMinecraft.sh (must be unique per server instance)
  • May 23rd 2019
    • Fixed typo in restart.sh where there was a space after stop command preventing the server from closing cleanly
    • Added 10 second sleep after a force close to give the server time to fully close before calling start.sh
    • Fixed server not restarting after scheduled nightly reboot (related to restart.sh bug)
    • Removed some direct (for example paths like /bin/sleep) that were harming cross platform compatibility
  • April 26th 2019
    • Tested new Bedrock dedicated server 1.11.1.2
    • Added startup counter to server instead of waiting a flat 4s to reduce unnecessary waiting
    • Fixed ARM support (64 bit required)
  • April 18th 2019
    • Changed StopChecks++ to StopChecks=$((StopChecks+1)) to improve portability (thanks Jason B.)
    • Added TimeoutStartSec=600 to server to prevent it being killed if taking longer than usual to download server
  • March 7th 2019
    • Added Armbian support
    • Tested with Tinkerboard
    • Fixed portability issue with route vs /sbin/route
  • March 2nd 2019
    • Running the SetupMinecraft.sh script after already installing now updates all scripts and reconfigures the minecraftbe service
    • Script now works on any Debian based distribution (Ubuntu, Debian, Raspbian, etc.)
    • Added *very slow* support for ARM platforms such as Raspberry Pi with QEMU emulation of x86_64
    • Renamed service to minecraftbe to avoid confusion with Java version
  • February 15th 2019
    • Backups now compress into .tar.gz format (saved in backups folder)
    • Startup service waits up to 20 seconds for an internet connection to allow time for DHCP to retrieve an IP address
    • Removed unnecessary sleep time on stop.sh script so it returns as soon as the minecraft server closes
  • February 8th 2019
    • Initial release