Running Multiple Minecraft Servers On A Single Dedicated Server Using MineOS

26th May, 2017 by
Previously, we’ve looked at setting up a Minecraft server on a dedicated server, allowing you to manage a single Minecraft server instance. This time, we’ll look at using a simpler management tool: MineOS. MineOS is a tool that comes as either its own Linux distribution or as a set of scripts that you can install to your own server. In this case, we’ll look at getting it running on an Ubuntu server.

What does MineOS do?

MineOS allows you to easily setup multiple Minecraft servers on your dedicated server so users can also create and manage their own Minecraft servers on your dedicated server. To get started, you’ll need a dedicated server running Ubuntu Linux.

The first step is to install NodeJS, which we’ll do from their official repositories:

sudo curl -sL https://deb.nodesource.com/setup_4.x | sudo bash -

sudo apt-get -y install nodejs

The first line downloads a script that configures the NodeJS repositories for you. The second line installs NodeJS itself.

The next step is to install the dependencies you’ll need to run it all:

sudo apt-get install git supervisor rdiff-backup screen build-essential openjdk-7-jre-headless

Installing MineOS

Now, onto the task of installing MineOS itself. This is done by cloning the MineOS git repository and then running an installer. First to get the files, use the following command:

sudo mkdir -p /usr/games

sudo cd /usr/games

sudo git clone https://github.com/hexparrot/mineos-node.git minecraft

sudo cd minecraft

  1. The first command creates the directory where we are going to install MineOS’ files.  Then we change to that directory.
  2. Next, we clone the git repository into a directory called Minecraft.
  3. Finally, we change to that directory.
  4. Once we’ve done that, we need to do a small amount of configuration:

sudo git config core.filemode false

sudo chmod +x service.js mineos_console.js generate-sslcert.sh webui.js

sudo npm install

  1. First, we tweak the git config.
  2. Then set a number of the javascript files to be executable.  
  3. Finally, we use npm to install the NodeJS module. Now we are onto the last few steps:

sudo ln -s /usr/games/minecraft/mineos_console.js /usr/local/bin/mineos

sudo cp mineos.conf /etc/mineos.conf

  • The first line creates a symlink to the main MineOS executable from /usr/local/bin/mineos.
  • The second copies the default config file into the /etc directory.

Keep Creepers Out

At this point, everything is pretty much ready to go. We recommend using SSL certificates on your websites, and this service is no different. MineOS comes with a simple script to enable SSL and create a self-signed certificate for the web management interface. You can always replace the self-signed certificate later with a real SSL certificate if you plan to allow other people to user MineOS to manage Minecraft servers on your dedicated server.

To get started with the self-signed certificate use these commands:

sudo cd /usr/games/minecraft

sudo ./generate-sslcert.sh

Now, you will just need to configure the web interface to restart if the server is rebooted. This uses supervisor which we installed earlier:

sudo cp init/supervisor_conf /etc/supervisor/conf.d/mineos.conf

sudo supervisorctl reload

You can now start your MineOS server with the following command:

sudo supervisorctl start mineos

The web interface will now be active and enable you to create and manage Minecraft servers. The web interface uses the underlying Linux OS for user management. So to add a new user to the system web interface access and manage servers, you’ll need to use the adduser command at the command line.

Congratulations, MineOS is now running and you can connect to the web interface by navigating to https://123.456.789.000:8443 changing the “123.456.789.000” to your server’s IP address. Alternately, if you have already pointed a domain name at the server you can use that instead of the IP address. Once you have logged in the web interface is pretty self-explanatory and it lets you launch and manage servers easily.

(Visited 1,169 times, 1 visits today)