1. EasyHost
  2. Migrate
  3. Railway
  4. Koa

Migrate Koa from Railway to EasyHost

Move your Koa app in four steps, and keep Railway running until the new deployment works.

Last updated November 9, 2026

Export your variables

railway variables --kv > .env

Then import them into EasyHost.

npx ezhst env import .env

Change the Koa setup

No adapter is needed. Remove any serverless wrapper and call app.listen directly.

railway.json or railway.toml is not read by EasyHost, so its build and routing rules need moving into your app or into build settings.

Listen on process.env.PORT and bind to 0.0.0.0.

Deploy and test

npx ezhst projects create my-project --link
npx ezhst apps create my-app
npx ezhst link --project <project-slug> --app <app-slug>
npx ezhst env import .env
npx ezhst deploy

Test your easyhost.fun URL before changing DNS. Railway runs your app on long-running services billed by usage, so check anything that depends on it, such as platform functions or cron configuration. Schedules move to EasyHost schedules.

Switch your domain

npx ezhst domains add www.example.com
npx ezhst domains list
npx ezhst domains verify www.example.com

Follow the custom domain guides for your DNS provider. Keep Railway running until traffic has moved. Also read why Koa may be unreachable and the Railway overview.

Start for free

Install the skill, choose Global or Local, then tell your agent to deploy. No credit card, no config files.

npx ezhst skill install