🐳 Method 1 — Docker (Codespaces Edition)
The cleanest, most reliable way to host Eaglercraft in 2026
This is the rewritten version of the original Docker method, but optimized for GitHub Codespaces. You'll have a fully working server running in your browser within 5-10 minutes.
✅ Step 1 — Create a Codespace
- Open your GitHub repo
- Click Code → Codespaces → Create Codespace
- Wait for it to load
- Docker is already installed — no setup needed.
📁 Step 2 — Create Server Folders
Open the terminal and run:
mkdir -p ~/eaglercraft-server/{world,world_nether,world_the_end}
cd ~/eaglercraft-server
This creates the folder structure where Minecraft world data will be stored.
📝 Step 3 — Create docker-compose.yml
Run:
nano docker-compose.yml
Paste this entire block:
version: '3.8'
services:
eaglercraft:
image: ghcr.io/yangchuansheng/eaglerx1.8server:1.12.1
container_name: eaglercraft-server
ports:
- "5200:5200"
- "5201:5201"
volumes:
- ./world:/world
- ./world_nether:/world_nether
- ./world_the_end:/world_the_end
restart: unless-stopped
What This Does:
- image: Uses the official Eaglercraft Docker image (version 1.12.1)
- ports: Exposes ports 5200 (server list) and 5201 (direct play)
- volumes: Persists world data so it survives container restarts
- restart: Automatically restarts if it crashes
Save the file:
- Press CTRL + O, then Enter
- Press CTRL + X
▶️ Step 4 — Start the Server
docker-compose up -d
The -d flag runs it in the background (detached mode).
📜 Step 5 — View Logs
docker-compose logs -f
You should see the server boot normally. Press CTRL + C to exit logs.
Expected output:
eaglercraft-server | Starting Minecraft server...
eaglercraft-server | [09:15:23] [Server thread/INFO]: Done (2.345s)!
🌐 Step 6 — Expose Ports in Codespaces
Codespaces auto-detects ports, but if not:
- Click the PORTS tab in the bottom panel
- Add ports 5200 and 5201
- Set both to Public (click the icon next to each)
You will now see URLs like:
https://5201-yourcodespaceid.github.dev
🔐 Automatic Security: Codespaces automatically gives you HTTPS + WSS + SSL certificates. You do not need Nginx or Certbot.
🎮 Step 7 — Connect to Your Server
Method A — Add to Server List (Port 5200)
In Eaglercraft Multiplayer:
- Click Multiplayer
- Click Add Server
- Paste this URL:
wss://5200-yourcodespaceid.github.dev
Method B — Direct Connect (Port 5201)
Open in your browser (while in Codespaces):
https://5201-yourcodespaceid.github.dev
Codespaces automatically upgrades WebSockets to wss://.
🛠️ Troubleshooting
Server won't start?
docker-compose logs --tail 50
Check if port is already in use or image failed to pull.
Can't connect?
- Make sure ports are set to Public
- Check if server is running:
docker-compose ps - Verify wss:// URL includes the correct port
Restart the server:
docker-compose restart
Stop the server:
docker-compose down
📂 Full Folder Structure
eaglercraft-server/
│
├── docker-compose.yml
│
├── world/
├── world_nether/
└── world_the_end/
✨ You're Done!
Your Eaglercraft server is now hosting on GitHub Codespaces with automatic HTTPS and WebSocket support.