What maps to Miget
Your Railway apps read the injected
$PORT variable. Miget sets an immutable PORT=5000 and routes public traffic there, so apps that already bind to $PORT need no code change.Migration steps
1
Recreate your services
For each Railway service, create an app in a single Miget Resource. Railway auto-detects your build with Nixpacks; Miget’s buildpacks similarly auto-detect the language from marker files (like
package.json, requirements.txt, or go.mod). If you already have a Dockerfile, bring it and Miget will use it instead.2
Push your code
Deploy with a
git push miget, or connect the GitHub integration to build automatically on every push. See Git push to builder for details.3
Move your databases
Provision a managed PostgreSQL addon to replace Railway Postgres - Miget injects
DATABASE_URL automatically. Migrate your data with pg_dump from Railway and pg_restore into Miget. For Railway Redis, add a Valkey addon, which injects REDIS_URL.4
Set your variables
Copy your Railway variables over as Miget environment variables. Database connection strings are injected for you, so you only need to move your own app config.
5
Point your domain
Add your custom domain and Miget provisions TLS automatically. Update your DNS records as described in Custom domains.
Next steps
Resource plans
See how a fixed-price plan hosts unlimited services.
Fair Scheduler
Understand how CPU is shared across your apps.
Compose Stacks
Deploy a whole multi-service project from one file.
Pricing
Compare plans and find the right fit.
Compare Railway alternatives
What happens to a usage-based bill when your app never sleeps.

