Migrate from Railway to Plexivo

Move Railway services, variables, a Railway Postgres database and custom domains to Plexivo App Runner and Plexivo Postgres, step by step.

This guide moves the services of a Railway project to Plexivo App Runner, its PostgreSQL database to Plexivo Postgres, and your domain to Plexivo. Your Railway project keeps serving until you change DNS, so you can go back at any point before that.

Railway and Plexivo, side by side#

On RailwayOn Plexivo
ProjectA project in your Plexivo organisation.
Service from a repository or imageA Plexivo App Runner app, from Git or a container image.
Service without a public domainA private app. Services that are not web servers still accept connections on PORT; see Workers.
Cron schedule on a serviceA CronJob on Plexivo Kubernetes, from the Startup plan.
Builders and railway.json or railway.tomlYour Dockerfile, or Plexivo detects your language. Railway’s config files are not read.
Pre-deploy commandNo separate step. Run migrations as your app starts, or from your computer before you deploy.
Service variablesThe app’s Environment tab.
Shared variablesPlexivo Secrets, attached to each app that needs them.
Reference variables that point at a database serviceConnect the database to the app: Plexivo sets DATABASE_URL and DATABASE_CA_CERT and keeps them current. See Connect a database or cache.
Private networking between servicesApps, databases and caches in the same Plexivo project reach each other over the private network.
PostgreSQLPlexivo Postgres. Plexivo copies it for you.
MySQLPlexivo MySQL; see Move a MySQL database.
RedisPlexivo Cache, Redis-compatible.
VolumesPlexivo App Runner keeps no local files between restarts. Keep files in your database, or use a volume on Plexivo Kubernetes.
Custom domainsCustom domains, with certificates Plexivo issues and renews.

Before you begin#

  • A Plexivo account.
  • Your code on GitHub, GitLab or Bitbucket, or a public container image of it.
  • Access to your domain’s DNS settings.

Move your project#

  1. Take stock. List each service in the project: its source, its start command, its variables, its volumes, any cron schedule and its domains. Note which services are databases, and the PostgreSQL version.
  2. Create the app. In the Plexivo console, choose Create, then Plexivo App Runner, connect your Git provider, pick the repository and branch, choose a size, and deploy. See Deploy from Git. Or ask Plexivo AI with the repository link: it plans the app and its database with the monthly price, and creates nothing until you approve.
  3. Copy your variables. Add each service variable on the app’s Environment tab, then apply. Railway’s raw editor shows them as KEY=value lines to copy from. Put shared variables into Plexivo Secrets. Leave out reference variables to databases: connecting the database sets them. See Environment and secrets.
  4. Move the database. Create an empty Plexivo Postgres database. In Migrations, choose New migration, then Other PostgreSQL, and paste the database’s public connection URL, which Railway shows when public networking is on. Stop writes before the copy starts, then connect the new database on the app’s Environment tab. See Move a PostgreSQL database.
  5. Add your domain. On the app’s Domains tab, add your hostname and prove you own it with the TXT record Plexivo shows. Your traffic stays on Railway meanwhile. See Custom domains.
  6. Switch DNS. Test the app on its plexivo.app address first. Then replace the record that points at Railway with the routing record Plexivo shows. Plexivo issues the certificate on the first HTTPS request once the hostname routes.
  7. Check it. On the Domains tab, Routing reads Ready on Plexivo and the certificate is valid. Open your site, run your usual checks, and watch the app’s Logs and Metrics.
  8. Retire Railway. Keep the old project for a few days as your way back. When you are satisfied, delete its services and database on Railway.

Database TLS#

Plexivo Postgres accepts only TLS connections, and your app receives the CA certificate as DATABASE_CA_CERT. If your code turned off certificate checks, point it at the CA certificate instead. See TLS.

Paying from IndiaYour wallet is in US dollars; pay in rupees by UPI, card or netbanking at this month’s rate, with a GST tax invoice. Your databases, stored app data and backups are stored in India. See Paying from India and Data residency.

Free migration help#

Prefer a hand? Tell us what you run, and Plexivo support plans the move with you. Ask for free migration help. Moving a paid workload? You may also be able to apply for migration credits.

Next steps#

Railway is a trademark of its owner. Plexivo is not affiliated with, endorsed or sponsored by Railway.

Updated 2 November 2026