Проблема построения проекта Java внутри образа докера (проблема с памятью) - PullRequest
0 голосов
/ 25 июня 2019

Я пытался собрать проект Java с помощью упаковщика Gradle с помощью файла Docker.Но в некоторых случаях сборка не удалась с сообщением об ошибке, связанным с проблемой памяти, и никогда не заканчивалась.При сборке на локальной машине проблем не возникает.

файл Docker:

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 загрузочных плагина для пружинной загрузки и org.openapi.generator.

Я попытался добавить файл 'gradle.properties' с таким содержанием:

org.gradle.jvmargs=-Xmx2g -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

1 Ответ

2 голосов
/ 25 июня 2019

Увеличение пределов памяти JVM - это только одна сторона счета. Вам также нужно увеличить пределы памяти докера!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...