[英]Issue building a java project inside a docker image (Memory issue)
我試圖用帶有dockerfile的gradle包裝器構建一個Java項目。 但是構建有時會失敗,並顯示與內存問題相關的錯誤消息,並且永遠無法完成。 在本地計算機上完成構建時沒有問題。
碼頭工人文件:
FROM adoptopenjdk/openjdk11 as builder
COPY ./ ./
RUN ./gradlew build
循環中的錯誤消息:
08:16:17.039 [DEBUG] [org.gradle.process.internal.health.memory.MemoryManager] Emitting OS memory status event {Total: 33576538112, Free: 16748404736}
08:16:17.039 [DEBUG] [org.gradle.launcher.daemon.server.health.LowMemoryDaemonExpirationStrategy] Received memory status update: {Total: 33576538112, Free: 16748404736}
08:16:17.040 [DEBUG] [org.gradle.process.internal.health.memory.MemoryManager] Emitting JVM memory status event {Maximum: 2147483648, Committed: 526385152}
08:16:17.310 [DEBUG] [org.gradle.launcher.daemon.server.Daemon] DaemonExpirationPeriodicCheck running
08:16:17.311 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Waiting to acquire shared lock on daemon addresses registry.
08:16:17.311 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Lock acquired on daemon addresses registry.
08:16:17.311 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on daemon addresses registry.
該項目使用2個gradle插件spring boot和org.openapi.generator。
我嘗試添加具有以下內容的文件“ gradle.properties”:
org.gradle.jvmargs=-Xmx2g -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
增加JVM內存限制只是費用的一方面。 您還需要增加Docker的內存限制!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.