127.0.0.1:{port}.
Prepare your app
- A
pom.xmlorbuild.gradlethat builds an executable jar. The Spring Boot plugin does this. - The Java version comes from
<java.version>inpom.xml, or the Gradle toolchain (JavaLanguageVersion.of(21)). Java 17, 21, and 25 are offered; Temurin JDKs are downloaded the first time a site needs one. - Optional but recommended:
spring-boot-starter-actuator, so the panel can read/actuator/health.
Deploy steps
1
Build
./mvnw package, ./gradlew bootJar, or mvn package, with tests skipped.2
Start
java -jar the built jar with --server.address=127.0.0.1 --server.port=$PORT. The site’s .env also has SERVER_PORT and SERVER_ADDRESS, which Spring Boot reads on its own.3
Wait for it
A JVM takes a while to start, so the deploy waits up to 2 minutes for the app to answer and writes what
/actuator/health says in the deploy log: UP, DOWN with the parts that are down (like db), or a hint to add the actuator. A slow start is a warning, not a failed deploy.PostgreSQL, Redis, MinIO, and Vault
Install what the app needs on the Plugins page, then link each plugin to the website. Their variables go into the site’s.env:
Linking restarts the app, so it picks the new values up right away.
Moving a database
Put a plain-formatpg_dump (.sql or .sql.gz) in the site folder and import it into the database the panel made for the site with the MCP tool import-database. It runs as the site’s own database role, so it can only change that database. For the PostgreSQL plugin, use psql against its port.