Written by: Ivy Bowman | Edited by: Annika Jencks


This is a guide on how to easily run a powerful, always free Minecraft Java Edition server in the cloud. We will use the Oracle Cloud always free tier for hosting and Crafty Controller for managing our Minecraft server. I would estimate this is an intermediate level guide. If you have any questions, please feel free to contact me; links are at the bottom of this page.

Oracle Cloud Setup

Sign up for Oracle’s Always Free Plan

If you don’t have an account, go to https://www.oracle.com/cloud/free and click “Start for Free.” You will need to fill out your information, including valid billing info.

NOTE: You will not be charged unless you explicitly choose to upgrade to a paid account. It is only used for verification and easy upgrading. Also, keep in mind that you cannot change your account region later, so make sure to choose wisely.

WARNING: Oracle is super picky; ensure you don’t mess up your address or billing information otherwise they will lock you out.

For more info on creating an account see this section of Todd’s guide.

Create a VM Instance

Once you have an account click “Create a VM Instance” on the homepage. Give it a name (I used Minecraft-server) and leave the compartment as default.

  1. Click Edit on the “Image and Shape” section.

  2. Click “Change Image” and select ubuntu, then hit “Select Image”.

  3. Click “Change Shape” and configure as shown below.

    1. For shape series select: Ampere

    2. Then select “VM.Standard.A1.Flex”

    3. Set the OCPUs slider to 4. It should set the memory slider to 24gb automatically.

      NOTE: The website will allow you to allocate more resources due to a free trial granted on sign up. DO NOT DO THIS. Only allocate up to 4 OCPU and 24gb of ram.

    4. Hit “Select Shape” to save your settings.

    VM Shape Settings

    VM Shape Settings

    Your “Image and Shape” section should now look like this picture. Ensure the always free-eligible badge shows on the shape section.

    Image and shape section Configured

    Image and shape section Configured

  4. Onto networking, click edit which should bring up the screen below, configure the settings as shown. You can customize the name if desired, but it is optional.

    1. Select create new under primary network.
    2. Select create new under subnet.
    3. Ensure “assign a public IPv4 address” is selected or you will not be able to connect remotely.

    Networking Section

    Networking Section

  5. Now onto the SSH keys section. Think of it like a password only more secure. Make sure to keep it on the default of “Generate a key pair for me” and download your private key.

SSH keys section

SSH keys section

NOTE: Keep this file in a safe location and do not share it publicly! Treat it like a password. You may want to keep a backup of the key as you need it to connect over SSH.

All done! Just keep the boot volume settings as default and then hit create at the bottom. It should redirect you to the VM details page and have a status of provisioning displayed.

Once it’s running, look for the instance access section and copy your public IP address.