Для документации док-библиотеки (цитата и ссылки ниже), вот краткая информация:
Изображение по умолчанию.Используйте его, если не уверены.
openjdk:<version>-stretch
и openjdk:<version>-jessie
jessie
или stretch
являются кодовыми именами комплектов для выпусковиз Debian и укажите, на каком выпуске основан образ.
Точно так же этот образ основан на Alpine Linux , поэтому является очень маленьким базовым образом.Рекомендуется, если вам нужно, чтобы размер изображения был как можно меньше.Предостережение заключается в том, что в нем используются некоторые необычные библиотеки, но это не должно быть проблемой для большинства программ.В случае сомнений проверьте официальные документы ниже.
Этот образ содержит только минимальные пакеты, необходимые для запуска Java (и являетсянапример, отсутствует множество библиотек Java, связанных с пользовательским интерфейсом).Если вы не работаете в среде, где only будет развернут образ openjdk
и у вас есть ограничения по пространству, рекомендуется использовать образ по умолчанию поверх этого.
openjdk:<version>-windowsservercore
Этот образ основан на Windows Server Core (microsoft/windowsservercore
) .
Полные документы ( версия показана ниже здесь , последняя версия здесь ):
Варианты изображений
Изображения openjdk
бывают разных вкусов, каждый из которых предназначен для конкретного случая использования.
openjdk:<version>
Это изображение де-факто.Если вы не уверены в своих потребностях, возможно, вы захотите воспользоваться этим.Он предназначен для использования как в качестве одноразового контейнера (смонтируйте исходный код и запустите контейнер для запуска приложения), так и в качестве основы для создания других образов.
Некоторые из этих тегов могутесть имена, как Джесси или растянуть в них.Это кодовые имена комплектов для выпусков Debian и указывают, на каком выпуске основан образ.
openjdk:<version>-alpine
Это изображение основано на популярном Проект Alpine Linux , доступный в официальном образе alpine
.Alpine Linux намного меньше, чем большинство базовых образов дистрибутива (~ 5 МБ), и, следовательно, приводит к гораздо более тонким изображениям в целом.
Этот вариант настоятельно рекомендуется, когда желаемый конечный размер изображения настолько мал, насколько это возможно.Главное предостережение, которое следует отметить, это то, что он использует musl libc вместо glibc и friends , поэтому некоторые программы могут столкнуться с проблемами в зависимости от глубины их требований к libc.Тем не менее, большинство программ не имеют проблемы с этим, поэтому этот вариант, как правило, является очень безопасным выбором.См. эту ветку комментариев Hacker News для более подробного обсуждения проблем, которые могут возникнуть, и некоторых сравнений за и против использования изображений на основе Alpine.
Чтобы минимизировать размер изображения, редко встречаются дополнительные связанныеинструменты (такие как git
или bash
) для включения в изображения на основе Alpine.Используя этот образ в качестве основы, добавьте нужные вещи в свой собственный файл Dockerfile (см. alpine
описание изображения для примеров того, как устанавливать пакеты, если вы незнакомы).
openjdk:<version>-windowsservercore
Этот образ основан на Windows Server Core (microsoft/windowsservercore
) .Таким образом, он работает только в тех местах, где работает этот образ, например в Windows 10 Professional / Enterprise (Anniversary Edition) или Windows Server 2016.
Информацию о том, как запустить Docker в Windows, см. В соответствующих разделах.Руководство по быстрому запуску, предоставленное Microsoft:
openjdk:<version>-slim
Этот образ устанавливает пакет OpenJDK -headless
, поэтому отсутствуют многие библиотеки Java, связанные с пользовательским интерфейсом, и некоторые распространенные пакеты.содержится в теге по умолчанию.Он содержит только минимальные пакеты, необходимые для запуска Java.Если вы не работаете в среде, где only будет развернут образ openjdk
, и у вас есть ограничения по пространству, мы настоятельно рекомендуем использовать образ этого хранилища по умолчанию.