Realms is a subscription-based service which will take you several bucks a month, so if it’s possible, running your own server would be a better choice.
Running your own server has one downside: you need to keep your (server) machine turned on.
There would be worries about the electric charges, but with Raspberry Pi: a beast with low power consumption, they will not be yours.
Now, here are steps to configure and run the Minecraft server on Raspberry Pi 3:
0. Prepare
Java needs to be installed on your machine.
In my case, I installed oracle-java8-jdk:
My Raspberry Pi has the minimum amount of GPU memory(16MB), and an external HDD attached for root partition.
Additionally, the server uses port no: 25565, so you should open the port if you want to connect from the outside world.
1. Download the build tools
On your Raspberry Pi, download the build tools:
and run it (you need Java installed):
After some minutes, you’ll see the built file named: spigot-1.10.2.jar.
(Of course, the version number may vary.)
2. Agree with the End User License Agreement
Run the jar file for the first time:
then you’ll get a file named: eula.txt with this output:
Read eula.txt carefully and do the following if you agree with it:
3. Run the server
After accepting EULA, now it’s the time to launch the server.
Run the jar file again:
In a few minutes, you’ll get into a prompt like this:
Now your server is up and running!
If you want to stop the server, just type stop in the prompt.
When you want to change something, look in to the server.properties file.
You can change the port number, game settings, or anything in there.
4. Run the server as a service
You cannot run/stop the server manually every time, so it needs to be managed as a service.
Firstly, install mcrcon for controlling the server conveniently:
After that, change enable-rcon=false to enable-rcon=true in the server.properties file.
You should also add rcon.password=PASSWORD in it.
Next, create a systemd service file like this:
then fill with following lines:
Replace User, Group, WorkingDirectory, ExecStart, and ExecStop values with yours, then all is done.
Run the server everytime when your Raspberry Pi is turned on
If you want to launch the server automatically when your Raspberry Pi is up:
For starting/stopping the server
If you want to start or stop the server manually:
It will take several seconds to start/stop the server, so please be patient.
5. Trouble shooting
Server is outdated
If you cannot connect to the server with ‘server is outdated’ error, generate a new .jar file with:
If you’re not sure, you can find all versions here.
After generation, edit the service file and restart the service:
6. Wrap-up
Raspberry Pi may not be perfect for running full-sized Minecraft server yet, but it would worth a try :-)