- Features
- Pricing
- English
- Français
- Deutsch
- Contact us
- Docs
- Login
Deploy your Java applications on a platform built for the JVM. Whether you run Spring Boot, Quarkus, Micronaut, or Jakarta EE, Upsun handles provisioning, scaling, and infrastructure automatically. Define your Java version, build process, and services in a single configuration file. Push to Git and Upsun builds, provisions, and deploys your entire stack.

Define your Java version, build tool, and services in a single YAML file. Add managed services like PostgreSQL, Redis, Kafka, Elasticsearch, or OpenSearch, and Upsun wires them to your app through relationships and environment variables.
Upsun supports OpenJDK versions (headless packages to reduce unused GUI components). You select the major version; Upsun applies the latest compatible minor and periodically updated patch versions when you deploy.
Upsun runs your build process during deployment and launches your application with the start command you define in your configuration. With support for Kotlin, Groovy, and Scala, alongside any compatible build tool.
Explore build configurationUpsun expects your web process to bind to the provided PORT environment variable (for example, --port=$PORT). This keeps behavior consistent across environments.
Set start commandUsing Git, builds are reused, and data is cloned automatically with byte-for-byte replicas, including your database and services. What you test in staging is precisely what you get in production.
Deploy a single Spring Boot monolith or a full microservices architecture. Upsun supports multiple applications per project using Maven modules, Gradle multi-project builds, or Git submodules.
Structure multi-app projectsSkip building internal deployment tooling. Push to Git and Upsun handles provisioning, environment creation, and deployments. Use the CLI, web console, or integrate with your existing CI pipeline on GitHub, GitLab, or Bitbucket.
Connect your Git providerManage your projects directly from your terminal. Anything you can do in the Upsun console, you can do with the CLI. Create environments, check logs, SSH into containers, or run commands, all from the command line.
Manage environments using CLIContinuous profiling is enabled by default for Java on Upsun. Monitor CPU time, wall-time, and heap allocation across all environments from the console. Track memory usage, response times, and get alerts when resources run low.
Each branch runs in its own isolated environment with the same configuration and managed services, so you can profile changes under production-like conditions and prove the gains before you merge.
Learn moreGet a real-time view of your resource usage with infrastructure metrics. Track CPU, memory, and disk usage across all containers. The Java continuous profiler measures three dimensions: CPU time, wall-time, and heap memory.
Learn moreWrite performance tests for your Java functions and service calls. Add performance budgets to your CI pipeline to catch regressions before they reach production. Ensure optimizations stay optimized.
Learn more

