How to Run Multiple Game Servers on One VPS with Pterodactyl
You don’t need a separate hosting plan for every game your group plays. One VPS running Pterodactyl can host your Minecraft, Rust, and Valheim servers side by side, each in its own isolated Docker container, all managed from a single web panel. The setup requires a KVM-based Linux VPS, about an hour of terminal work, and some honest resource math so you don’t overload the box. This guide covers the full process I use: server requirements, RAM budgeting per game, Panel and Wings installation, and what it costs compared to renting managed game hosting for each title.
What Is Pterodactyl
Pterodactyl is a free, open-source game server management panel built around two components. The Panel is the web interface where you create servers, monitor resources, and manage files. Wings is the daemon that runs on your VPS and controls the actual game servers, each one isolated in its own Docker container. That isolation matters when you’re running multiple games, since a crashed Rust server can’t take your Minecraft world down with it.

Support for individual games comes through “eggs,” which are prebuilt configuration templates. Hundreds exist, covering everything from Minecraft and Rust to FiveM and Valheim.
Development slowed after the original author stepped back in 2023, and most new feature work now happens in Pelican, a community fork. Pterodactyl itself still gets releases though, with v1.14.1 shipping in June 2026, so it remains a safe production choice.
What Your VPS Needs
Before touching the install script, make sure your server clears a few requirements. Getting these wrong is the most common reason Pterodactyl setups fail.
Virtualization and Operating System
The big one is virtualization type. Wings runs every game server inside Docker, and Docker needs a real kernel to work with. KVM gives it that. OpenVZ containers share the host kernel instead, so Docker either refuses to run or breaks in ways that waste your evening. Check what you’re buying before you pay, because plenty of budget providers still sell OpenVZ without making it obvious. KVM-based providers like BlueVPS list it upfront on their Linux VPS hosting plans, which also come with unmetered traffic. That matters more than you’d think, since game servers chew through bandwidth once player counts grow.
For the OS, Ubuntu 22.04 or 24.04 LTS are the safest picks, and Debian 12 works well too. Skip anything exotic, as the installer scripts and documentation assume one of these.
CPU, RAM, and Storage
The Panel stack (Nginx, PHP, MariaDB, Redis) plus Wings eats roughly 1 to 2 GB of RAM before a single game server starts. Budget 2 CPU cores and 4 GB RAM as your floor, then add whatever your games need on top. The next section covers that math.
Storage should be NVMe or at least SSD, since game servers hammer the disk during world saves and mod loading. 50 GB is a workable minimum for two or three lightweight servers, and modded setups fill space faster than you’d expect.
Ports and Location
The panel needs 80 and 443, Wings takes 8080, SFTP runs on 2022, and each game claims its own range. Pick a data center close to your players while you’re at it, since location is the one spec you can’t upgrade later.
The Resource Math for Multiple Servers
This is where most multi-server setups go wrong. People add up advertised RAM requirements, match them to a VPS plan, and wonder why everything lags. The panel overhead, the OS, and Docker itself all need their share before any game gets a byte.
The rule I stick to is allocating no more than 75% of total RAM to game servers combined. On a 16 GB VPS, that means roughly 12 GB for games, with the rest covering the Panel stack, Wings, the OS, and a safety margin for spikes. Overcommit past that and the kernel starts killing processes when a world save and a player rush land at the same time.
Here’s what individual games realistically need per server.
| Game | RAM | CPU cores | Notes |
|---|---|---|---|
| Minecraft (Paper) | 4 GB | 2 | Add 2 GB per ~50 mods on Forge/Fabric |
| Rust | 8-10 GB | 4 | Map size drives peaks |
| Valheim | 2-4 GB | 2 | Light until late-game bases grow |
| ARK: Survival Ascended | 12-16 GB | 4 | Heaviest common title |
| FiveM | 2-4 GB | 2 | Script count matters more than players |
| Terraria | 1-2 GB | 1 | Cheapest to run |
A few things worth knowing about these numbers. They’re per running server, not per installed server. Pterodactyl lets you install ten servers and only power on three, and stopped containers cost you disk space but nothing else. CPU is also more forgiving than RAM, since games spike cores in bursts rather than holding them, so modest overallocation there works fine. RAM overallocation doesn’t.
A worked example on a 16 GB, 6-core VPS. Within the 12 GB game budget you could run a Paper Minecraft server (4 GB), a Valheim server (3 GB), and a FiveM server (3 GB) simultaneously, with 2 GB spare for one of them to breathe during peak hours. Swap in Rust and it eats the whole budget alone, so at that point you’re choosing between running it solo or upgrading the plan. ARK ASA on 16 GB isn’t realistic once the panel takes its cut, and 24 GB is the honest starting point there.
Minecraft deserves special mention because its RAM appetite varies wildly with view distance, player spread, and mods. Our guide on how much RAM a Minecraft server needs breaks that down in detail.
Installing Panel and Wings
You can install everything manually following the official docs, which takes 30 to 60 minutes and involves a long chain of PHP, database, and web server configuration. Or you can use the community installer script, which does the same job in about 15. The script isn’t made by the Pterodactyl team, but it’s open source, actively maintained, and widely used, and it’s what I’d recommend unless you have a specific reason to hand-roll the stack.
Running the Installer
SSH into your fresh server as root and run the following.
bash <(curl -s https://pterodactyl-installer.se)Pick the option to install both Panel and Wings on the same machine, which is the standard single-VPS setup. The script pulls in PHP 8.3, MariaDB, Nginx, Redis, and Docker, then walks you through a series of prompts. Most defaults are fine. The ones that matter are the database password (make it strong, it’s guarding every server config you’ll create), the admin account details, and the FQDN. If you have a domain, point an A record at your VPS IP first and enter the domain here, then let the script configure a free Let’s Encrypt certificate. Running on a bare IP works too, but you’ll get browser warnings and no proper SSL, so a domain is worth the five minutes.
Say yes when the script offers to configure the firewall. If you manage UFW yourself instead, open 80, 443, 8080, and 2022 before continuing, plus the game port ranges you planned earlier.
Connecting Wings to the Panel
Log into the panel at your domain and head to the admin area. Create a Location first, which is just an organizational label. Then create a Node, enter your FQDN, and set the total memory and disk figures from your resource budget. This is where the 75% rule from the previous section gets enforced, so enter the game budget figure rather than the full VPS spec.
Once saved, the node’s Configuration tab gives you an auto-deploy command. Paste it into your SSH session, start Wings with systemctl enable --now wings, and the node indicator in the panel should flip to green. If it stays red, the culprit is almost always port 8080 blocked or the FQDN not resolving.
Creating Your Game Servers
With the node online, everything else happens in the panel. Before building the first server, head to the node’s Allocation tab and add the IP and port pairs your games will use. Each server needs at least one allocation, and it pays to reserve sensible ranges now. Minecraft convention is 25565 and up, Rust uses 28015, FiveM wants 30120. Match whatever ranges you opened in the firewall earlier.
Then create the server itself from the admin area. Pick the owner account, select the egg for your game, assign an allocation, and set the resource limits. These limits are the enforcement layer for your budget from the resource section, so a Paper Minecraft server gets 4096 MB of RAM and the CPU cap you planned, not unlimited everything. Docker holds each server to its limits, which is exactly what keeps one greedy game from starving the others.
The panel installs the server files automatically once you hit create. For Minecraft that means the Paper jar and config, for Steam games the egg pulls from SteamCMD. First installs take a few minutes depending on the game size, and ARK will test your patience.
Adding the second and third game is the same loop with a different egg. If a game isn’t in the default list, community egg repositories cover hundreds of titles, and importing one is a two-minute JSON upload. From there, each server gets its own console, file manager, and start-stop controls, and you can hand friends sub-user access to their server without giving them yours.
What It Costs vs. Managed Game Hosting
The math only makes sense if you compare like for like, so take the three-server example from earlier. A managed Minecraft plan with 4 GB runs $8 to $12 per month at most decent hosts. A Valheim server adds another $10 or so, and a FiveM server similar. Renting all three separately puts you at $25 to $35 per month, every month, with each one capped at its plan’s resources whether you’re using them or not.
A 16 GB KVM VPS capable of running all three lands between $15 and $30 per month depending on provider and location. Same games, one bill, and the flexibility to swap titles whenever your group’s tastes change. Drop Valheim, spin up Terraria, add a test server for a modpack. None of that costs extra or involves a support ticket. Over a year, the gap typically works out to $100 or more in your favor, and it widens with every additional game.
The honest trade-off is that you’re the support team now. When a server won’t start at 11 PM, there’s no live chat, just you, the console logs, and the Pterodactyl Discord. Updates, backups, and security patches are your job too. If that sounds like a bad Friday night, managed hosting exists for a reason, and our Minecraft server hosting roundup covers the hosts that do it well. But if you’re comfortable in a terminal, you’re paying a meaningful premium for someone else to run systemctl restart.
Should You Bother?
If your group plays two or more games and someone’s comfortable with SSH, yes. The setup is an afternoon of work that pays for itself within a few months, and Pterodactyl’s isolation means experimenting never risks your main server. If you’re running one Minecraft server for five friends and the terminal makes you nervous, rent managed hosting and enjoy your evening. Both are valid, only one comes with root access.