Host a Minecraft server for free on Oracle Cloud
Oracle Cloud's Always Free tier gives you 2 ARM Ampere cores and 12 GB of RAM — more than enough to run a smooth Paper or Fabric Minecraft server for 20+ friends, forever, at $0/month. Here's the full setup.
Why Oracle Cloud beats every other free host for Minecraft
- 2 ARM Ampere cores + 12 GB RAM — free forever. Aternos gives you 1 GB and queues you.
- 200 GB block storage — plenty for large worlds and backups.
- 10 TB/month egress — bandwidth is never the bottleneck.
- Your own IP and full root access — install any mod, any plugin, any Java version.
Step 1 — Provision the ARM instance
Sign up for Oracle Cloud (signup guide), then launch an Ampere A1.Flex shape with 2 OCPUs and 12 GB RAM. Pick Ubuntu 22.04 as the image. Hitting "Out of host capacity"? Use our retry script.
Step 2 — Open the Minecraft port
Two places to open TCP 25565: the VCN Security List in the Oracle Cloud console, and the instance's local iptables:
sudo iptables -I INPUT 6 -m state --state NEW -p tcp --dport 25565 -j ACCEPT
sudo netfilter-persistent saveStep 3 — Install Java 21 (ARM-native)
sudo apt update
sudo apt install -y openjdk-21-jre-headless screen
java -version # confirm aarch64 buildStep 4 — Install Paper
Paper is a high-performance Spigot fork. Grab the latest 1.21.x build:
mkdir -p /opt/minecraft && cd /opt/minecraft
curl -o paper.jar https://api.papermc.io/v2/projects/paper/versions/1.21.4/builds/latest/downloads/paper-1.21.4-latest.jar
echo "eula=true" > eula.txtStep 5 — Launch with tuned JVM flags
Allocate 16 GB to the heap (leave headroom for the OS) and use Aikar's flags for smoother GC on Ampere:
screen -S mc
java -Xms16G -Xmx16G \
-XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 \
-XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC \
-XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 \
-jar paper.jar noguiDetach with Ctrl-A D. Connect from your Minecraft client using the instance's public IP.
Step 6 — Auto-restart with systemd
# /etc/systemd/system/minecraft.service
[Unit]
Description=Paper Minecraft
After=network.target
[Service]
WorkingDirectory=/opt/minecraft
ExecStart=/usr/bin/java -Xms16G -Xmx16G -jar paper.jar nogui
Restart=always
User=minecraft
[Install]
WantedBy=multi-user.targetsudo systemctl enable --now minecraft and you're done.
Backups to Oracle Object Storage (also free)
Add a nightly cron: tar czf /tmp/world.tgz /opt/minecraft/world && oci os object put --bucket-name mc-backups --file /tmp/world.tgz. Object Storage gives you 10 GB always free — plenty for weekly snapshots.
Prefer to skip the Linux chores?
Cheaploy automates the whole Oracle provisioning + Docker + systemd step for web apps. Minecraft itself still needs a manual server jar, but the underlying compute setup is the same — and if you use Cheaploy for your web dashboard on the same tenancy, you'll never touch a VCN by hand again.
Frequently asked
How many players can a free Oracle Cloud Minecraft server handle?+
With Paper and 12 GB of RAM allocated to the JVM, 15-25 concurrent players is comfortable for vanilla-style gameplay. Heavy modpacks (RLCraft, All The Mods) support fewer — plan for 5-8.
Is Java or Bedrock better on Oracle Cloud ARM?+
Java (via Paper or Fabric) is the mature path — ARM-native OpenJDK 21 is fast and stable. Bedrock server binaries are x86-only, so you'd need emulation and take a big performance hit.
Will Oracle shut down my server for being 'idle' or 'not production'?+
Oracle reclaims Always Free instances only after ~7 days of very low CPU and network. A live Minecraft server, even with 0 players, generates enough activity to stay running indefinitely.
How do I keep the world backed up?+
Add a nightly cron job that tars /opt/minecraft/world and uploads to Oracle Object Storage (10 GB always free). One-line rclone or oci-cli command.
Deploy your project for $0
No credit card. No Oracle sales call. Ship to your own cloud in under 10 minutes.
Start free