
How to Set Up a Minecraft Server on a VDS: Full Guide
Set up a Minecraft Java Edition server on a VDS: choosing server software, installing plugins, JVM and performance tuning, and picking the right hosting.
How to Set Up a Minecraft Server on a VDS
Running a Minecraft server is one of the most popular things people do in gaming. Whether you just want to play with friends or grow a large community, a solid game server package gets you a professional Minecraft experience. This guide walks through the whole process from scratch.
System Requirements for a Minecraft Server
Server performance follows hardware quality directly. Here is what we recommend by player count:
| Players | CPU | RAM | SSD | Network |
|---|---|---|---|---|
| 1-10 | 2 cores | 2 GB | 30 GB | 100 Mbps |
| 10-30 | 4 cores | 4-6 GB | 50 GB | 1 Gbps |
| 30-50 | 6 cores | 8 GB | 80 GB | 1 Gbps |
| 50-100 | 8+ cores | 12-16 GB | 100+ GB | 10 Gbps |
💡 White Bilişim Xeon Enterprise VDS packages run on Intel Xeon Gold 6230R processors and perform excellently for Minecraft. The 10 Gbps network keeps ping low for your players.
Step 1: Choosing the VDS
What to look for when picking a VDS for Minecraft:
- Processor clock speed: Minecraft is sensitive to single core performance
- RAM capacity: budget roughly 100-200 MB of RAM per player
- SSD storage: it directly affects chunk loading speed
- DDoS protection: popular servers are attacked constantly
- Location: host close to your player base
Step 2: Installing Java
The Minecraft Java Edition server needs Java:
# Installing Java 21 on Ubuntu/Debian
sudo apt update
sudo apt install openjdk-21-jre-headless -y
# Check the Java version
java -versionOn Windows Server you can install Java from Oracle JDK or Adoptium.
Step 3: Choosing Server Software
You will need to pick a server implementation:
| Software | Strength | Verdict |
|---|---|---|
| Paper | Optimized, plugin support | ✅ Recommended for most |
| Spigot | Plugin support, widely used | Good alternative |
| Vanilla | Official Mojang server | Plain experience |
| Purpur | Paper based, extra features | For advanced users |
| Fabric | Mod support | For modded servers |
Downloading Paper
# Create the server directory
mkdir /home/minecraft
cd /home/minecraft
# Download the Paper server
wget https://api.papermc.io/v2/projects/paper/versions/1.21.4/builds/LATEST/downloads/paper-1.21.4-LATEST.jar -O server.jarStep 4: Starting the Server
For the first launch:
# Start command (Linux)
java -Xms2G -Xmx4G -jar server.jar nogui
# Accept the EULA
echo "eula=true" > eula.txt
# Start again
java -Xms2G -Xmx4G -jar server.jar noguiCreating a Startup Script
A startup script makes the server much easier to manage:
#!/bin/bash
# start.sh
java -Xms4G -Xmx8G \
-XX:+UseG1GC \
-XX:+ParallelRefProcEnabled \
-XX:MaxGCPauseMillis=200 \
-XX:+UnlockExperimentalVMOptions \
-XX:+DisableExplicitGC \
-XX:G1NewSizePercent=30 \
-XX:G1MaxNewSizePercent=40 \
-XX:G1HeapRegionSize=8M \
-jar server.jar noguiThese JVM flags tune garbage collection and lift server performance noticeably.
Step 5: Configuring server.properties
# Basic settings
server-port=25565
max-players=50
view-distance=10
simulation-distance=8
motd=Your Server Name | whitebilisim.com
online-mode=true
# World settings
level-seed=
level-type=minecraft:normal
difficulty=normal
gamemode=survival
pvp=true
# Performance settings
network-compression-threshold=256
max-tick-time=60000Step 6: Installing Plugins
To add plugins to a Paper or Spigot server:
- Download the plugin from SpigotMC or Modrinth
- Copy the
.jarfile into theplugins/folder - Restart the server
Essential Plugins We Recommend
- EssentialsX: core commands and administration
- LuckPerms: permission management
- WorldGuard + WorldEdit: region protection
- Vault: economy API
- CoreProtect: block logging and rollback
- Spark: performance profiling
Minecraft Server Performance Tuning
paper-global.yml Settings
chunk-system:
gen-parallelism: default
io-threads: -1
worker-threads: -1
collisions:
enable-player-collisions: true
send-full-pos-for-hard-colliding-entities: true
misc:
max-joins-per-tick: 5Performance Tips
- Lower the view distance: 8-10 is the sweet spot
- Profile the server: find bottlenecks with
/spark profiler - Pre-generate chunks: build the map ahead of time
- Set entity limits: cap the mob counts
- Drop unused plugins: every plugin adds load
Infrastructure for Large Minecraft Servers
Once you are past 50 concurrent players, strong hardware stops being optional.
🚀 Our Ryzen Premium VDS packages use AMD Ryzen Threadripper PRO 5975WX processors and deliver outstanding Minecraft performance. The high single core speed keeps your TPS (ticks per second) pinned at 20.
Setting Up a Proxy (BungeeCord/Velocity)
If you run more than one server, Velocity lets you link them into a network:
# Download Velocity
wget https://api.papermc.io/v2/projects/velocity/versions/3.4.0/builds/LATEST/downloads/velocity-3.4.0-LATEST.jar
# Start it
java -Xms512M -Xmx1G -jar velocity.jarWhite Bilişim Package Suggestions for Minecraft
| Server Type | Package | Specs | Price |
|---|---|---|---|
| Survival (1-20) | ENT-2 | 2 cores, 4 GB RAM | 240 TRY/month |
| SMP (20-40) | ENT-4 | 6 cores, 8 GB RAM | 400 TRY/month |
| Network (40-80) | PRO-3 | 6 Ryzen cores, 8 GB RAM | 800 TRY/month |
| Mega network (100+) | PRO-6 | 12 Ryzen cores, 16 GB RAM | 1,600 TRY/month |
Conclusion
Running a Minecraft server is quite easy with the right infrastructure behind it. White Bilişim provides professional Minecraft hosting from Istanbul, with a 10 Gbps network, free daily backups and 24/7 technical support.
👉 Take a look at our Xeon Enterprise VDS packages, or the Ryzen Premium VDS range for heavier servers.