Host your own Minecraft server for $5/month

This guide has been written hundreds of times, so here is one more. The aim of this guide is to be quick, painless, and secure. I'll be using a Digital Ocean - 512MB RAM - 20 GB SSD - 1TB Transfer - Ubuntu 13.10 64-bit server for this guide, which is at a convient price of $5/month!

What I assume about you

  • You know how to connect/access your server via SSH. If you're on Windows, PuTTY is standard. If you're on Mac, your "Terminal" app can use SSH command.
  • You have a server running Ubuntu 12.04 or later.
  • You don't have a firewall/port blocker installed.
  • You own a legal copy of Minecraft!

Creating an additional user

Once we're logged into our server, we need to create a new user to separate Minecraft from the root user. This is for organization and security!

  1. adduser creeper Input a password different from root's. You can skip over the extra info.
  2. chmod o+rw /dev/pts/0 This allows our new user use of screen command.

Install Java

Install Java (and screen if needed). Minecraft needs the Java.
apt-get install screen openjdk-7-jre

Commence Minecraft Setup

Switch to our new user, make a folder for all our Minecraft servers to be, and download the Minecraft server executable.

  1. su creeper Switch user from root to creeper.
  2. cd Shortcut to /home/creeper directory.
  3. mkdir minecraft Make a minecraft folder.
  4. cd minecraft Change directory to minecraft.
  5. mkdir vanilla Make directory for server files.
  6. cd vanilla Change directory to vanilla.

Find and copy the Minecraft server .jar URL from http://minecraft.net/download.

Right click the server jar and copy the URL

wget URL HERE Download the server .jar with this command.

Create a launch script

We have our server downloaded, we just need a small script to launch it.

  1. nano launch.sh Start editing a new file.
  2. java -Xmx512M -Xms512M -jar minecraft_server.X.X.X.jar nogui Enter this into our launch.sh. Replace the X's with the version number.
  3. Press Control+X to save the file and exit nano.
  4. chmod +x launch.sh Make launch.sh an executable.

If you have a server with more RAM, adjust the -Xmx and -Xms parameters.

Launching the server

We want the server to be running, even when we're not in the SSH session. To do this, we'll need to start a screen.

  1. screen -S MC Start our screen session and name it MC.
  2. ./launch.sh Launch our Minecraft server for the first time! This will add many files to our server folder.
  3. Confirm the server is running by connecting to it with your Minecraft client.

Congrats. You have a Minecraft server that rocks.

Protip: To leave your screen session, press Control + A then D. To get back to your Minecraft console, use screen -r MC to attatch to the session.

Tweaking the server settings

You have a shiny new server! But you want to change the settings a little. (Think MOTD, server name, world name, etc.) Close your server using the safe stop-server command inside the Minecraft console.

Once the server is offline, edit the server properties file: nano server.properties
The changes your make are yours to make, not mine. Google "Minecraft server.properties" to find out what each setting does.

Add some admin to our server. Enter admin usernames here: nano op.txt (Newline for every username)

Start up our server again to test the changes. Bingo bango bongo, all done. You're now the proud owner of a vanilla Minecraft server! What you do with it is up to you.

Notes

  1. 512MB of RAM on the server will be sufficient for 5-8 players. This might change as the game is updated for better or worse.
  2. I suggest investing extra time learning about Bukkit for your Minecraft server. I may do an addition post on creating a useful Bukkit server.
  3. A Digital Ocean server droplet was used to test this guide.

If you're looking for a great server provider, Digital Ocean is where it's at. If you found this guide useful and decide to use Digital Ocean as your server provider, I'd appreciate your support by using this DO referral link:

When you use this link and bill $10, I get $10 dollars towards my server costs! I'd really appreciate you and it would help me progress my goal of writing more fun server guides in my spare time while funding my own server projects! ♥

Comment

Ethan Trawick

I like shiny things! Follow me @Otoris

I get around. http://otoris.com/

Subscribe to Otoris' Blog

Get the latest posts delivered right to your inbox.

or subscribe via RSS with Feedly!