## The short version

To deploy a Quarkus 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 `jvm-21` template, runs the tested start command below and returns a public HTTPS URL.

## Deploy Quarkus

1. 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](/content/agents/index.html).

```
curl -fsSL https://get.ample.computer/install.sh | sh
ample auth signup
# then, in your agent:
# "Deploy this Quarkus app to Ample"
```

2. 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. 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. 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 | `jvm-21` |
| Build | `./mvnw -q -DskipTests package` |
| Start | `java -jar $(ls target/*.jar | grep -v -- '-plain' | head -n 1)` |
| Tested size | `s-1vcpu-2gb` |

Verified on Quarkus: the app built and started with the documented commands and answered on its public HTTPS URL. Build and start: ./mvnw -q -DskipTests package producing one uber-jar (quarkus.package.jar.type=uber-jar), then java -jar on the jvm-21 template (Temurin JDK 21) with quarkus.http.port read from PORT.

Last verification (September 21, 2026): Quarkus pattern fixture deployed on Ample (./mvnw -q -DskipTests package producing one uber-jar (quarkus.package.jar.type=uber-jar), then java -jar on the jvm-21 template (Temurin JDK 21) with quarkus.http.port read from PORT); for this guide: the app built and started with the documented commands and answered on its public HTTPS URL.

## Before you deploy

### You need

- A Quarkus project (./mvnw -q -DskipTests package producing one uber-jar (quarkus.package.jar.type=uber-jar), then java -jar on the jvm-21 template (Temurin JDK 21) with quarkus.http.port read from PORT)
- An Ample account token with servers:write

### Know the limits

- Verified on the jvm-21 template at s-1vcpu-2gb; other sizes and Quarkus major versions are not verified.

## Frequently asked questions

### Do I need a Dockerfile to deploy Quarkus?

No. Ample detects Quarkus from the repository and builds it from source on the `jvm-21` template. Dockerfile build steps are not run.

### How do I add a database to a Quarkus 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 Quarkus](/content/guides/quarkus/database-connection/index.html).

### What does it cost to host a Quarkus 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](/content/pricing/index.html).

### 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 Quarkus](/content/guides/quarkus/deployment-diagnostics/index.html).
