1717# docker run -i --rm -p 8081:8081 -p 5005:5005 -e JAVA_ENABLE_DEBUG="true" quarkus/code-with-quarkus-jvm
1818#
1919###
20- FROM registry.access.redhat.com/ubi8/openjdk-11:latest
20+ FROM registry.access.redhat.com/ubi8/openjdk-17:1.14-10.1675788279
2121
2222USER root
2323WORKDIR /build
24- RUN mkdir -p .mvn/wrapper
25- # Build dependency offline to streamline build
26- COPY mvnw* .
27- COPY .mvn/wrapper .mvn/wrapper
24+
2825COPY pom.xml .
29- RUN ./mvnw dependency:go-offline
26+ RUN mvn dependency:go-offline
3027
3128COPY src src
32- RUN ./mvnw package
29+ RUN mvn package -Dmaven.test.skip=true
30+
31+ RUN mkdir -p /build/target/quarkus-app-tmp
32+ RUN grep version /build/target/maven-archiver/pom.properties | cut -d '=' -f2 >.env-version
33+ RUN grep artifactId /build/target/maven-archiver/pom.properties | cut -d '=' -f2 >.env-id
34+
35+ # mv the uber jar in case the quarkus property quarkus.package.type=uber-jar is set
36+ RUN mv /build/target/$(cat .env-id)-$(cat .env-version)*.jar /build/target/quarkus-app-tmp/
3337
34- FROM registry.access.redhat.com/ubi8/ubi-minimal:8.3
38+ FROM registry.access.redhat.com/ubi8/ubi-minimal:8.7-1085
3539
36- ARG JAVA_PACKAGE=java-11 -openjdk-headless
40+ ARG JAVA_PACKAGE=java-17 -openjdk-devel
3741ARG RUN_JAVA_VERSION=1.3.8
3842ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en'
3943# Install java and the run-java script
@@ -53,10 +57,12 @@ RUN microdnf install curl ca-certificates ${JAVA_PACKAGE} \
5357# Configure the JAVA_OPTIONS, you can add -XshowSettings:vm to also display the heap size.
5458ENV JAVA_OPTIONS="-Dquarkus.http.host=0.0.0.0 -Dquarkus.http.port=8081 -Djava.util.logging.manager=org.jboss.logmanager.LogManager"
5559# We make four distinct layers so if there are application changes the library layers can be re-used
56- COPY --from=0 --chown=1001 /build/target/quarkus-app/lib/ /deployments/lib/
57- COPY --from=0 --chown=1001 /build/target/quarkus-app/*.jar /deployments/
58- COPY --from=0 --chown=1001 /build/target/quarkus-app/app/ /deployments/app/
59- COPY --from=0 --chown=1001 /build/target/quarkus-app/quarkus/ /deployments/quarkus/
60+ COPY --from=0 --chown=1001 /build/target/quarkus-app-tmp/*.jar /deployments/export-run-artifact.jar
61+ COPY --from=0 --chown=1001 /build/target/*quarkus-app/*lib/ /deployments/lib/
62+ # Overwrite the uber jar if package type is normal
63+ COPY --from=0 --chown=1001 /build/target/*quarkus-app/*.jar /deployments/export-run-artifact.jar
64+ COPY --from=0 --chown=1001 /build/target/*quarkus-app/*app/ /deployments/app/
65+ COPY --from=0 --chown=1001 /build/target/*quarkus-app/*quarkus/ /deployments/quarkus/
6066
6167EXPOSE 8081
6268USER 1001
0 commit comments