How to deploy an Axum app | Ample
The short version
To deploy an Axum 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 ubuntu-24.04 template, runs the tested start command below and returns a public HTTPS URL.
Deploy Axum
- 1
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 Axum app to Ample"
- 2
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> --public
- 3
Or use MCP
Agents connected to the Ample MCP server (https://api.ample.computer/mcp, or ample mcp over stdio) call ample_deploy with the same arguments.
- 4
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
What Ample runs
| Template | ubuntu-24.04 |
|---|---|
| Build | cargo build --release |
| Start | `./$(ls target/release/*.d |
| Tested size | s-1vcpu-2gb |
Verified on Axum: the app built and started with the documented commands and answered on its public HTTPS URL. Build and start: cargo build --release in the rust builder image (stable toolchain, Cargo.lock committed, pure-Rust dependencies), then the release binary on the ubuntu-24.04 template reading PORT and DATABASE_URL.
Last verification (September 21, 2026): Axum pattern fixture deployed on Ample (cargo build --release in the rust builder image (stable toolchain, Cargo.lock committed, pure-Rust dependencies), then the release binary on the ubuntu-24.04 template reading PORT and DATABASE_URL); for this guide: the app built and started with the documented commands and answered on its public HTTPS URL.
Before you deploy
You need
- An Axum project (cargo build --release in the rust builder image (stable toolchain, Cargo.lock committed, pure-Rust dependencies), then the release binary on the ubuntu-24.04 template reading PORT and DATABASE_URL)
- An Ample account token with servers:write
Know the limits
- Verified on the ubuntu-24.04 template at s-1vcpu-2gb; other sizes and Axum major versions are not verified.
Frequently asked questions
Do I need a Dockerfile to deploy Axum?
No. Ample detects Axum from the repository and builds it from source on the ubuntu-24.04 template. Dockerfile build steps are not run.
How do I add a database to a Axum 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 Axum.
What does it cost to host a Axum 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 Axum.
More for Axum
Axum How to serve Axum public assets through a CDN on Ample Axum How to set environment variables and secrets for an Axum app on Ample Axum How to connect an Axum app to Postgres on Ample Axum How to fix a failed Axum deploy on Ample Axum How to use S3-compatible storage from an Axum app on Ample Axum How to serve private files from an Axum app on Ample Axum How to run database migrations for an Axum app on Ample