Railway

Deploy Pterodactyl Panel — Game Server Management on Railway

Self-host Pterodactyl game server panel. Private MariaDB & Redis included.

Deploy Pterodactyl Panel — Game Server Management on Railway

Just deployed

/data

MariaDB

mariadb:11

Just deployed

Just deployed

/app/var

Deploy and Host Pterodactyl Panel on Railway

Pterodactyl is the open-source game server management panel that has been the standard since 2015 — a secure, MIT-licensed control panel for Minecraft, Rust, ARK, Valheim, CS2, and hundreds of other game servers. Built with PHP, React, and Go, it gives you a clean admin UI, per-user permissions, subusers, API access, and full server lifecycle control.

This template deploys the Pterodactyl Panel with a private MariaDB database, Redis for sessions and queues, persistent panel storage, and private networking — pre-wired on Railway for ~$5–10/month. Run the control plane in the cloud and connect your Wings game-server nodes from any Docker-capable infrastructure.


What This Template Deploys

ServicePurpose
Pterodactyl PanelThe public control panel — admin UI, user management, server configuration, and API on the web service
MariaDB 11Private database — users, servers, nodes, allocations, and all panel state. Volume at /var/lib/mysql
Redis 8.2.1Private cache, session store, and queue backend — required for panel performance and background jobs

All three services connect over Railway's private network. MariaDB and Redis are never exposed publicly. Application secrets (APP_KEY, HASHIDS_SALT) and database credentials are generated automatically at deploy time.


About Hosting Pterodactyl Panel on Railway

Running the Pterodactyl Panel in production requires a MariaDB database, Redis for sessions and queues, persistent storage for the panel's config and certificates, and a public HTTPS endpoint. Without a managed host, you're configuring Docker Compose, nginx, SSL certificates, database backups, and inter-service networking manually.

Railway handles all of it. The panel deploys with private MariaDB and Redis instances, a persistent volume for panel state, and an automatic HTTPS domain — your control panel is live without touching a server.

Important — Panel only: This template runs the Pterodactyl Panel (the control dashboard). It does not run Wings or game servers on Railway, because game servers require Docker-in-Docker, arbitrary port ranges, and persistent workloads that Railway's platform does not support. Connect external Wings nodes from a VPS or dedicated server that supports Docker and game-server ports. This is a clean, low-cost way to host the Panel itself.

Typical cost: ~$5–10/month on Railway's Hobby plan for the Panel, MariaDB, and Redis — versus a VPS where you manage the OS, database, and SSL yourself.


Deploy in Under 5 Minutes

  1. Click Deploy on Railway — Panel, MariaDB, and Redis build automatically (~3–5 minutes)
  2. APP_KEY, HASHIDS_SALT, and database credentials are auto-generated — no manual secrets
  3. Set APP_URL to your Railway public domain so panel links resolve correctly
  4. Open your Railway URL and create the first admin user via the panel
  5. Add your external Wings node under Admin → Nodes and connect your game servers

No SSH. No nginx. No SSL certificate management for the Panel.


Common Use Cases

  • Self-hosted game server control panel — manage Minecraft, Rust, ARK, Valheim, and CS2 servers from one secure dashboard instead of SSH and config files
  • Game server hosting business panel — run the customer-facing control plane for a hosting company; per-user permissions, subusers, and API access are built in
  • Minecraft network admin dashboard — manage multiple Minecraft servers, allocations, and startup parameters across nodes from a single Pterodactyl Panel
  • Cloud-hosted panel with on-prem Wings nodes — keep the Panel always-on in the cloud on Railway while game servers run on your own dedicated hardware or VPS Wings nodes
  • Pterodactyl evaluation and staging — spin up a clean Panel instance to test eggs, themes, Blueprint extensions, or API integrations before touching production
  • Community game server management — give trusted members scoped subuser access to specific servers without handing over full root or SSH access

Configuration

VariableRequiredDescription
APP_KEY✅ Auto-generatedLaravel application encryption key — generated at deploy
APP_URL✅ RequiredYour Railway public domain — required for correct panel links and assets
HASHIDS_SALT✅ Auto-generatedSalt for hashed IDs in URLs — generated at deploy
DB_HOST✅ Auto-injectedPrivate MariaDB hostname via Railway reference variable
DB_DATABASE✅ Auto-injectedDatabase name from the MariaDB service
DB_USERNAME✅ Auto-injectedDatabase user from the MariaDB service
DB_PASSWORD✅ Auto-injectedDatabase password via Railway reference variable
REDIS_HOST✅ Auto-injectedPrivate Redis hostname via Railway reference variable
CACHE_DRIVER✅ Pre-setredis — uses Redis for cache
SESSION_DRIVER✅ Pre-setredis — uses Redis for sessions
QUEUE_DRIVER✅ Pre-setredis — uses Redis for background queues
MAIL_FROM_ADDRESSRecommendedSender address for password resets and account emails

The Panel needs email configured for password resets and account invitations. On Railway's Hobby plan raw SMTP is blocked — use Resend or Brevo (HTTPS-based SMTP relays with free tiers).


Pterodactyl Panel on Railway vs. Alternatives

This Template (Railway)Self-hosted VPSGame Panel SaaSPelican Panel
Monthly cost~$5–10 flat$5–20 + your time$10–30/monthSelf-hosted
Panel setup✅ One click❌ Manual nginx/SSL/DB✅ Managed⚠️ Manual
Private DB + Redis✅ Pre-wired⚠️ You configureN/A⚠️ Manual
Runs game servers (Wings)❌ External nodes only✅ Same box✅ Yes⚠️ External
Data ownership✅ Your instance✅ Yes❌ Provider✅ Yes
Open source✅ MIT✅ MIT❌ No✅ MIT
Auto HTTPS✅ Railway❌ Manual certbot✅ Yes❌ Manual

Dependencies for Pterodactyl Panel Hosting

  • Railway account — Hobby plan (~$5–10/month) covers Panel, MariaDB, and Redis
  • At least one external Wings node (VPS or dedicated server with Docker) to run game servers
  • SMTP provider for password resets and emails — Resend or Brevo recommended for Railway Hobby

Deployment Dependencies

Implementation Details

Deploys ghcr.io/pterodactyl/panel:latest alongside mariadb:11 and redis:8.2.1 over Railway's private network. MariaDB and Redis ports are never exposed publicly — only the Panel has a public domain. Cache, sessions, and queues run through Redis; panel state, config, and logs persist on the /app/var volume. Wings nodes (which run the games) must be hosted on external Docker-capable infrastructure and connected under Admin → Nodes — Railway does not support the Docker-in-Docker and arbitrary ports Wings requires.


Frequently Asked Questions

Can I run Minecraft or other game servers directly on Railway with this template? No. This template runs the Pterodactyl Panel only — the control dashboard. Game servers run on Wings daemon nodes, which require Docker-in-Docker and arbitrary port ranges that Railway doesn't support. Host Wings on a VPS or dedicated server and connect it to this Panel. The Panel manages the servers; the Wings node runs them.

Why host just the Panel on Railway instead of everything on a VPS? Keeping the Panel on Railway gives you automatic HTTPS, a managed private MariaDB and Redis, zero nginx/SSL maintenance, and an always-on control plane independent of your game-server hardware. Your Wings nodes can be cheaper bare-metal boxes optimised for game workloads while the Panel stays reliable in the cloud.

Do I lose my panel data and server configs if Railway redeploys? No. All users, servers, nodes, and allocations are stored in the private MariaDB instance, and panel state lives on the /app/var volume. Redeploys and updates do not affect your data.

How do I connect a Wings node to this Panel? Create the node under Admin → Nodes in the panel, generate the configuration token, and run the Wings daemon on your external server with that token. The node appears in the panel once it checks in. Full steps are in the Pterodactyl Wings installation guide.

Is email required? Email is needed for password resets and invitations. On Railway Hobby, raw SMTP is blocked — configure Resend or Brevo (free, HTTPS-based) via the MAIL_* variables.

How do I update the Panel to a newer version? Update the image tag in Railway service settings to a specific Pterodactyl release and redeploy. MariaDB data and the panel volume are unaffected. Run any required migrations from the panel container after major version updates.


Why Deploy and Host Pterodactyl Panel on Railway?

Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.

By deploying the Pterodactyl Panel on Railway, you get the industry-standard game server control panel — private MariaDB and Redis, persistent storage, and automatic HTTPS — at ~$5–10/month flat, with your game servers running on external Wings nodes you fully control.


Template Content

MariaDB

mariadb:11

More templates in this category

View Template
Rocky Linux
[Jul'26] Hosted Rocky Linux 9 workspace with SSH and persistent storage. 🚀

codestorm
19
View Template
Foundry Virtual Tabletop
A Self-Hosted & Modern Roleplaying Platform

Lucas
71
View Template
Letta Code Remote
Run a Letta Code agent 24/7. No inbound ports, just deploy.

Letta
47