How to Transfer and Host Your Minecraft Bedrock World on an AWS Free Tier Server
Hosting your own Minecraft Bedrock server on an AWS Free Tier EC2 instance is a nice way to run your custom world, without needing a powerful local machine or paying for a third-party hosting service. This guide walks you through the entire process, from transferring your existing .mcworld file to running a dedicated server on AWS, and ensuring it stays online. I’ll also address common issues like connectivity and keeping the server running in the background. Put down your queries in the comments I’ll respond to them.
Prerequisites
- Minecraft Bedrock World: You have an existing
.mcworldfile. - AWS Account: Sign up for the AWS Free Tier at aws.amazon.com.
- Basic Command Line Knowledge: Familiarity with SSH and file transfers is helpful but not mandatory.
- Tools: A terminal (Terminal for macOS/Linux, or Git Bash/WSL for Windows) and SCP for file transfers.
- EC2 Key Pair: A
.pemfile for SSH access (generated during EC2 setup).
Step 1: Prepare Your Minecraft Bedrock World
Your .mcworld file is essentially a ZIP archive containing your world data. Here’s how to prepare it for upload:
-
Locate or Prepare Your World:
- If you have a
.mcworldfile, rename it to.zipfor easier handling:- Windows Command Prompt:
rename your_world.mcworld your_world.zip - Linux/macOS/Git Bash:
mv your_world.mcworld your_world.zip
- Windows Command Prompt:
- Unzip the file to extract the world folder:
unzip your_world.zip -d your_worldThis creates a folder (e.g.,
your_world) containing files likelevel.dat,levelname.txt, and adbfolder.
- If you have a
-
Verify World Name:
- Open
your_world/levelname.txtto confirm the world’s name (e.g.,MyWorld). This will be used later in the server configuration.
- Open
-
Keep the Folder Ready:
- The extracted folder (e.g.,
your_world) will be uploaded to your AWS server.
- The extracted folder (e.g.,
Step 2: Set Up an AWS EC2 Instance (Free Tier)
AWS’s Free Tier offers a t2.micro instance, which is sufficient for a small Minecraft Bedrock server.
-
Log in to AWS Console:
- Go to console.aws.amazon.com and sign in.
-
Launch an EC2 Instance:
- Navigate to EC2 > Instances > Launch Instances.
- Name:
MinecraftBedrock. - AMI: Select Ubuntu Server 22.04 LTS (Free Tier eligible).
- Instance Type: Choose
t2.micro. - Key Pair:
- Create a new key pair (e.g.,
minecraft_bedrock_server.pem) or use an existing one. - Download and save the
.pemfile securely.
- Create a new key pair (e.g.,
- Network Settings:
- Click Edit under Network Settings.
- Create or select a security group.
-
Add these inbound rules:
Type Protocol Port Range Source SSH TCP 22 0.0.0.0/0 or My IP Custom UDP UDP 19132 0.0.0.0/0 Custom UDP UDP 19133 0.0.0.0/0 - Note: Port 19132 is for IPv4 connections, and 19133 is for IPv6. Allowing SSH from
0.0.0.0/0is okay for testing but restrict to your IP for security later.
- Storage: Default (8 GB) is fine for Free Tier.
- Click Launch Instance.
-
Get Your Public IP:
- Once the instance is running, note its Public IPv4 Address (e.g.,
x.xx.xxx.xxx).
- Once the instance is running, note its Public IPv4 Address (e.g.,
Step 3: Connect to Your EC2 Instance
-
Set Permissions for Your Key: On your local machine, secure your
.pemfile:chmod 400 minecraft_bedrock_server.pem -
SSH into Your EC2 Instance:
ssh -i minecraft_bedrock_server.pem ubuntu@<your-ec2-public-ip>Replace
with your instance’s public IP.
Step 4: Install Minecraft Bedrock Dedicated Server
- Install Dependencies:
sudo apt update sudo apt install unzip curl tmux -y - Create a Directory:
mkdir ~/bedrock-server cd ~/bedrock-server -
Download the Latest Bedrock Server:
- Visit minecraft.net/en-us/download/server/bedrock to find the latest version.
- As of Now (May 2025), the correct link for version 1.21.81.2 is:
wget https://www.minecraft.net/bedrockdedicatedserver/bin-linux/bedrock-server-1.21.81.2.zip - Unzip the Server Files:
unzip bedrock-server-1.21.81.2.zip - Set Execute Permissions:
chmod +x bedrock_server - Test the Server:
./bedrock_serverWait for “Server started” in the logs, then stop it with Ctrl + C to configure your world.
Step 5: Upload Your World to the EC2 Instance
- Create the Worlds Directory: Run this on your EC2 instance
mkdir -p ~/bedrock-server/worlds -
Upload Your World Folder: From your local machine (in the directory containing your_world):
scp -i minecraft_bedrock_server.pem -r your_world ubuntu@<your-ec2-public-ip>:~/bedrock-server/worlds/ - Verify Upload: SSH back into your EC2 instance and check
ls ~/bedrock-server/worlds/
Step 6: Configure the Server to Use Your World
-
Edit server.properties:
mkdir -p ~/bedrock-server/worlds- Find the line:
level-name=Bedrock level - Change it to match your world folder name:
level-name=your_world -
Ensure the name matches exactly (case-sensitive).
-
Optional: Adjust other settings like gamemode=survival, difficulty=easy, or server-name=MyServer.
- Save and exit (Ctrl + O, Enter, Ctrl + X).
- Find the line:
-
Restart the Server:
cd ~/bedrock-server ./bedrock_server
Step 7: Configure the Server to Use Your World
To ensure your server stays online after disconnecting from SSH, use tmux:
-
Start a tmux Session:
tmux new -s minecraft -
Run the server:
cd ~/bedrock-server ./bedrock_server -
Detach from tmux:
- Press
Ctrl + B, release, then pressD. - This leaves the server running in the background.
- Press
-
Reconnect to tmux Later:
tmux attach -t minecraft
Step 8: Connect to Your Server
- Open Minecraft Bedrock:
- On your device (PC, phone, console), go to Play > Servers > Add Server.
- Enter:
- Server Name: Anything (e.g., My AWS Server)
- Server Address: Your EC2 Public IP (e.g., x.xx.xxx.xxx)
- Port: 19132
- Join and Test:
- Click Play. If your world loads, you’re set!
You now have a fully functional Minecraft Bedrock server running on AWS, with your custom world loaded. By using tmux, your server stays online 24/7, and your AWS Free Tier keeps costs at zero. Please note that the AWS Free Tier benefits last for 12 months from the date your account is activated, You need to be creating a new account after a year.
You can login into the server and anytime edit the server.properties to make game modifications.
If you run into issues or want to add features like custom permissions, operator status, or automated backups, reach out for help in the comments