Quarkus Payara Qube
What is Payara Qube?
Payara Qube is a Java deployment platform that runs Jakarta EE, Spring Boot, and Quarkus applications in production. It provides a complete, unified runtime environment with built-in monitoring, logging, and scaling capabilities.
The platform is available in two consumption models:
- Payara Qube (Managed)
-
A fully managed cloud service where Payara hosts and operates the infrastructure. You deploy applications through a web console or CLI, and the platform handles all operational concerns.
- Payara Qube (Self-Hosted)
-
Install and run the platform on your own infrastructure, whether on-premises or in your cloud infrastructure. You maintain full control over the deployment environment while using the same runtime capabilities as the managed service.
Both models provide identical functionality for deploying and running applications. The choice depends on your operational preferences and infrastructure requirements.
About This Extension
This extension prepares your Quarkus application for deployment to Payara Qube. It configures logging, metrics, and packaging to match the platform’s runtime requirements, ensuring your application integrates properly with Payara Qube’s monitoring and management features.
Installation
Add the extension to your project:
<dependency>
<groupId>io.quarkiverse.payara-qube</groupId>
<artifactId>quarkus-payara-qube</artifactId>
<version>1.0.0.Alpha1</version>
</dependency>
Building and Deploying
Build your application with Maven or Gradle as normal. The extension produces a ZIP file in your build output directory (typically target/
for Maven or build/
for Gradle).
Deploy this ZIP file to Payara Qube:
- Via Console
-
Upload through the web interface at upload application
- Via CLI
-
Use the command-line tool documented at Payara Qube CLI
Once deployed, your application runs on the Payara Qube runtime with full access to monitoring, logging, and scaling features.
What the Extension Configures
Application Package
Produces a ZIP distribution containing your application and its dependencies, structured for the Payara Qube runtime.
Logging Format
Configures JSON-formatted logging that integrates with Payara Qube’s log aggregation system. This enables log search, filtering, and analysis through the management console.
Use standard SLF4J or JBoss Logging APIs in your application code. The extension handles format configuration.
Do not override the logging format in your application configuration. Overriding the format will prevent your logs from appearing correctly in the console. |
Runtime Limitations
No Reaugmentation
Payara Qube does not perform reaugmentation. Only properties marked as runtime-configurable in Quarkus can be changed through the Payara Qube console.
Build-time properties must be set before packaging your application. Changes to build-time properties require rebuilding and redeploying the ZIP file.
Execution Constraints
The runtime environment restricts certain operations for security and stability:
-
File System Access: Applications can only write to
/tmp
. Writes to other locations will fail. -
Process Spawning: Applications cannot launch additional processes or subprocesses.
If your application or its dependencies attempt these operations, deployment will fail. Review your dependencies and ensure they operate within these constraints.