How to deploy an Express app | Ample
The short version
To deploy an Express app on Ample, run ample deploy . --name <app-name> --public in the project directory, or ask your coding agent to deploy it to Ample. Ample builds it on the node-22 template, starts it with npm run start and returns a public HTTPS URL.
STEP BY STEP
Deploy Express
Ask your coding agent
Install the Ample CLI and create an account (no browser or card needed), then ask Claude Code, Codex, Cursor or any agent with a shell to deploy the project. See Ample for coding agents.curl -fsSL https://get.ample.computer/install.sh | sh ample auth signup # then, in your agent: # "Deploy this Express app to Ample"Or deploy from the CLI
Run the deploy once from the project directory. It waits until the app is live or failed and prints the URL; exit 0 is live, 1 failed, 2 needs input.ample deploy . --name <app-name> --publicOr use MCP
Agents connected to the Ample MCP server (https://api.ample.computer/mcp, orample mcpover stdio) callample_deploywith the same arguments.Verify
Open the URL. If the deploy failed, read the build log, then the runtime log, fix the cause and deploy again.ample logs <deployment_id> --kind build
TESTED CONFIGURATION
What Ample runs
| Template | node-22 |
|---|---|
| Install | npm install |
| Build | echo no build needed |
| Start | npm run start |
| Tested size | s-1vcpu-1gb |
Ample detects Node, runs npm install and npm run build --if-present, and starts the app with npm run start on the node-22 template; the app only has to bind 0.0.0.0 on PORT.
Last verification (September 19, 2026): Express app with npm install and npm run start deployed on the node-22 template; the public URL served the expected response.
FIT CHECK
Before you deploy
You need
- A package.json with a start script
- A server that listens on process.env.PORT and 0.0.0.0
- An Ample account token with servers:write
Know the limits
- Verified on the node-22 template at s-1vcpu-1gb; other templates and sizes are not verified by this recipe.
- A missing package-lock.json produces a warning and a slower, non-reproducible install.
MOVING PLATFORMS
Move a Express app to Ample
- How to move an Express app from AWS EC2 to Ample
- How to move an Express app from DigitalOcean Droplet to Ample
- How to move an Express app from Fly.io to Ample
- How to move an Express app from Heroku to Ample
- How to move an Express app from Netlify to Ample
- How to move an Express app from Railway to Ample
- How to move an Express app from Render web service to Ample
- How to move an Express app from Vercel to Ample
QUESTIONS
Frequently asked questions
Do I need a Dockerfile to deploy Express?
No. Ample detects Express from the repository and builds it from source on the node-22 template. Dockerfile build steps are not run.
How do I add a database to a Express app?
Leave DATABASE_URL unset and deploy: when the code needs Postgres, MySQL, Redis or MongoDB, Ample creates a managed database and passes its connection string to the app. See Connect Postgres for Express.
What does it cost to host a Express app on Ample?
The Free plan runs 2 apps at once with no card and a hard monthly budget, so it never bills you. Larger needs are priced on volume; see pricing.
What if the deploy fails?
ample deploy waits until the app is live or failed. A failure returns who must act, a diagnosis and a suggested fix; read the logs with ample logs <deployment_id> --kind build. See Diagnose deployment failures for Express.
NEXT STEPS
More for Express
- Express How to serve Express public assets through a CDN on Ample
- Express How to set environment variables and secrets for an Express app on Ample
- Express How to connect an Express app to Postgres on Ample
- Express How to fix a failed Express deploy on Ample
- Express How to use S3-compatible storage from an Express app on Ample
- Express How to serve private files from an Express app on Ample
- Express How to run database migrations for an Express app on Ample