为 Quarkus 1.11->1.13 升级 Dockerfile

Upgrade Dockerfile for Quarkus 1.11->1.13

我正在尝试将我们的 Quarkus 版本从 1.11 升级到 1.13,但我不知道如何更新我的 Dockerfile。以下是我对 1.11 的看法以及我对 1.13 的尝试(未成功),但出现错误。任何帮助将不胜感激。

1.11 的工作 Dockerfile:

COPY --from=build /opt/work/java/modules/my-service/.build/ /opt/${SERVICE}/
COPY --from=build /opt/work/java/modulesmy-service/.build/my-service*-runner.jar /opt/my-service/
...
CMD eval JAVA_OPTS=\"$JAVA_OPTS\" && java $JAVA_OPTS -jar /opt/my-service/my-service*-runner.jar

1.13 的尝试更改:

COPY --from=build /opt/work/java/modules/my-service/.build/quarkus-app/* /opt/my-service/
...
CMD eval JAVA_OPTS=\"$JAVA_OPTS\" && java $JAVA_OPTS -jar /opt/my-service/quarkus-run.jar

部署错误:

Error: Could not find or load main class io.quarkus.bootstrap.runner.QuarkusEntryPoint
Caused by: java.lang.ClassNotFoundException: io.quarkus.bootstrap.runner.QuarkusEntryPoint

更改是因为切换到 fast-jar 作为默认包。有关详细信息,请参阅 this

要为新包装类型构建 docker 容器,您基本上需要执行以下操作:

COPY target/quarkus-app/lib/ /deployments/lib/
COPY target/quarkus-app/*.jar /deployments/
COPY target/quarkus-app/app/ /deployments/app/
COPY target/quarkus-app/quarkus/ /deployments/quarkus/

可见here.