Bitbucket管道-无法构建Quarkus本机映像(内存不足)



我正试图设置一个Bitbucket Pipeline来构建我的应用程序的本地Quarkus映像,但构建失败

原因:java.lang.RuntimeException:图像生成失败。退出代码为137,表示内存不足错误。考虑通过设置"Xmx"值来增加用于本地图像生成的Xmx值;quarkus.native.nature图像xmx";属性

我已经将管道的大小增加了一倍的内存量(8GB而不是4GB(,并试图给docker更多的内存,但没有成功。我已经将数据库层从mongodb更改为postgres。更改后,生成失败,并出现上述错误。我的bitbucket-pipelines.yml:

pipelines:
branches:
develop:
- step:
name: Build Native Image
image: quay.io/quarkus/ubi-quarkus-native-image:21.2-java11
services:
- docker
size: 2x
caches:
- maven
script:
- ./mvnw package -Pnative
artifacts:
- target/*-runner
definitions:
service:
docker:
memory: 7128

我可以设置其他参数来为构建分配更多内存吗?

Graalvm将获取尽可能多的内存,有时这是外部限制。因此,即使你付出更多,它也会不断失败。

因此,这可能是一个实际约束JVM的问题,以便graalvm更快地开始垃圾收集。

您可以按照错误消息和@geoand的建议设置-Dquarkus.native.native-image-xmx=5GB

最新更新