Почему базовый образ Docker Java 11 такой большой? (openjdk:11-jre-slim)JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Почему базовый образ Docker Java 11 такой большой? (openjdk:11-jre-slim)

Сообщение Anonymous »

Объявлено, что Java 11 является последней версией LTS. Итак, мы пытаемся запустить новые сервисы на основе этой версии Java.

Однако базовый образ Docker для Java 11 намного больше, чем эквивалент для Java 8:
(Я рассматриваю только официальный OpenJDK и самые легкие образы для каждой версии Java.)

Более глубокое копание выявило следующие "вещи":
  • образ openjdk:11-jre-slim использует базовый образ debian:sid-slim. Это вызывает две проблемы:


    это на 60 МБ больше, чем у alpine:3.8
  • версии Debian sid нестабильны
[*]пакет openjdk-11-jre-headless, установленный в образе, 3 раза больше, чем openjdk8-jre (внутри работающего контейнера Docker):
  • Код: Выделить всё

    openjdk:8-jre-alpine
    :

    Код: Выделить всё

    / # du -hs /usr/lib/jvm/java-1.8-openjdk/jre/lib/
    57.5M   /usr/lib/jvm/java-1.8-openjdk/jre/lib/
    
  • Код: Выделить всё

    openjdk:11-jre-slim
    :

    Код: Выделить всё

    # du -sh /usr/lib/jvm/java-11-openjdk-amd64/lib/
    179M    /usr/lib/jvm/java-11-openjdk-amd64/lib/
    

    Погружаясь глубже, я обнаружил «корень» этой тяжести — это файл модулей JDK:

    Код: Выделить всё

    # ls -lhG /usr/lib/jvm/java-11-openjdk-amd64/lib/modules
    135M    /usr/lib/jvm/java-11-openjdk-amd64/lib/modules
    

Итак, теперь возникшие вопросы:
  • Почему alpine больше не используется в качестве базового образа для тонких образов Java 11?
  • Почему для LTS Java используется нестабильная версия sid изображения?
  • Почему пакет slim/headless/JRE для OpenJDK 11 такой большой по сравнению с аналогичным пакетом OpenJDK 8?


    Что это за файл modules, который занимает 135 МБ в OpenJDK 11?

UPD: в качестве решения этих проблем можно использовать этот ответ: приложение Java 11 в качестве образа докера

Подробнее здесь: https://stackoverflow.com/questions/533 ... 1-jre-slim
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»