Quarkus Configuration Reference
Comprehensive configuration reference for Quarkus 3.33.1 LTS workloads running on OpenShift and Kubernetes. Covers all 9 demos from container images through Panama FFM.
UBI9 Default GC — Shenandoah
ubi9/openjdk-21-runtime ships Shenandoah
as the default GC — not G1GC. Temurin, Corretto, and Microsoft all default to G1GC.
Demos that compare GC algorithms override explicitly.
Multi-Stage Dockerfile Pattern
FROM maven:3.9-eclipse-temurin-21 AS builder
# USER root required in builder stage
FROM ubi9/openjdk-21-runtime
# USER 185 before ENTRYPOINT
ENTRYPOINT ["java",
"-XX:+UseContainerSupport",
"-XX:MaxRAMPercentage=75.0",
"-jar", "quarkus-run.jar"]
Sections
Container Images
JVM Heap Sizing
Garbage Collector Selection
Startup Optimization
Project Leyden AOT Cache
Observability — Metrics
Observability — Tracing
gRPC Configuration
Kubernetes Resource Configuration
HPA Configuration
Panama FFM (JDK 22+)
LangChain4j ONNX Embeddings
Native Image
Development Mode
Common Pitfalls
Common pitfalls covered: Unqualified image names in Podman, SELinux bind mounts
(
:Z), named volume permissions, dependency:go-offline hangs in UBI,
mounting config into otel-lgtm, AppCDS JVM fingerprint mismatch, allocateFrom()
vs allocateArray(), JAX-RS annotations on record declarations.
File location in repo
java-optimization-demos/QUARKUS-README.md