How to deploy a Spring Boot app | Ample

The short version

To deploy a Spring Boot 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 Spring Boot

  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.

curl -fsSL https://get.ample.computer/install.sh | sh
ample auth signup
# then, in your agent:
# "Deploy this Spring Boot app to Ample"
  1. 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
  1. 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.

  1. 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 Spring Boot: the app built and started with the documented commands and answered on its public HTTPS URL. Build and start: ./mvnw -q -DskipTests package (or the Gradle wrapper) producing one application jar, then java -jar on the jvm-21 template (Temurin JDK 21) with server.port read from PORT.

Last verification (September 21, 2026): Spring Boot pattern fixture deployed on Ample (./mvnw -q -DskipTests package (or the Gradle wrapper) producing one application jar, then java -jar on the jvm-21 template (Temurin JDK 21) with server.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

Know the limits

Frequently asked questions

Do I need a Dockerfile to deploy Spring Boot?

No. Ample detects Spring Boot 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 Spring Boot 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 Spring Boot.

What does it cost to host a Spring Boot 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 Spring Boot.

More for Spring Boot

Spring Boot How to serve Spring Boot public assets through a CDN on Ample Spring Boot How to set environment variables and secrets for a Spring Boot app on Ample Spring Boot How to connect a Spring Boot app to Postgres on Ample Spring Boot How to fix a failed Spring Boot deploy on Ample Spring Boot How to use S3-compatible storage from a Spring Boot app on Ample Spring Boot How to serve private files from a Spring Boot app on Ample Spring Boot How to run database migrations for a Spring Boot app on Ample