Docker kitaplık belgelerine göre (aşağıdaki alıntılar ve bağlantılar), işte bir özet:
Gerçek imaj. Emin değilseniz kullanın.
openjdk:<version>-buster
, openjdk:<version>-stretch
veopenjdk:<version>-jessie
buster
, jessie
Ya stretch
salıverilmeleri için paketi kod isimler Debian ve hangi belirtmek bırakın görüntü dayanmaktadır.
Benzer şekilde, bu görüntü Alpine Linux'a dayalıdır , dolayısıyla çok küçük bir temel görüntüdür. Mümkün olduğunca küçük bir görüntü boyutuna ihtiyacınız varsa önerilir. Uyarı, bazı alışılmadık kütüphaneler kullanması, ancak çoğu yazılım için sorun olmaması gerektiğidir. Şüpheniz varsa, aşağıdaki resmi belgelere bakın.
openjdk:<version>
(12'den itibaren) openjdk:<version>-oracle
veopenjdk:<version>-oraclelinux7
openjdk:12
Varsayılan görüntüden başlayarak -oracle
ve -oraclelinux7
varyantları resmi Oracle Linux 7 görüntüsüne dayalıdır . Varsayılan görüntüdeki OpenJDK ikili dosyaları -oracle
ve -oraclelinux7
varyantları Oracle tarafından oluşturulur ve OpenJDK topluluğundan alınır .
Bu görüntü yalnızca Java'yı çalıştırmak için gereken minimum paketleri içerir (ve örneğin, UI ile ilgili Java kitaplıklarının çoğunda eksik). Nerede bir ortamda çalışıyoruz sürece sadeceopenjdk
görüntü görev yapacak ve uzay kısıtlamaları, varsayılan görüntü bu bir yere önerilir.
openjdk:<version>-windowsservercore
Bu görüntü, Windows Server Core'a ( microsoft/windowsservercore
) dayanmaktadır .
Tam belgeler ( sürüm aşağıda gösterilmiştir , en son sürüm burada ):
Resim Çeşitleri
openjdk
Görüntüler birçok tatlar, belirli bir kullanım durumu için tasarlanmış her gelir.
openjdk:<version>
Bu, fiili görüntüdür. İhtiyaçlarınızın ne olduğundan emin değilseniz, muhtemelen bunu kullanmak istersiniz. Hem atılan bir konteyner (kaynak kodunuzu monte edin ve uygulamanızı başlatmak için konteyneri başlatın) hem de diğer görüntüleri oluşturmak için temel olarak kullanılmak üzere tasarlanmıştır.
Bu etiketlerden bazılarının içinde jessie veya stretch gibi isimler olabilir. Bunlar, Debian sürümleri için paket kod isimleridir
ve görüntünün hangi sürüme dayandığını gösterir.
openjdk:<version>-alpine
Bu görüntü popüler dayanmaktadır Alp Linux projesi mevcuttur, resmi görüntüsü . Alpine Linux, çoğu dağıtım temel görüntüsünden (~ 5MB) çok daha küçüktür ve bu nedenle genel olarak çok daha ince görüntülere yol açar.alpine
Bu varyant, nihai görüntü boyutunun olabildiğince küçük olması istendiğinde şiddetle tavsiye edilir. Dikkat edilmesi gereken ana uyarı , glibc ve friends yerine musl libc kullanmasıdır , bu nedenle bazı yazılımlar, libc gereksinimlerinin derinliğine bağlı olarak sorunlarla karşılaşabilir. Bununla birlikte, çoğu yazılımın bununla bir sorunu yoktur, bu nedenle bu değişken genellikle çok güvenli bir seçimdir. Ortaya çıkabilecek sorunlar hakkında daha fazla tartışma ve Alpine tabanlı görüntüleri kullanmanın bazı olumlu / olumsuz karşılaştırmaları için bu Hacker News yorum başlığına bakın .
Görüntü boyutunu en aza indirmek için, ilgili ek araçların ( git
veya gibi bash
) Alp tabanlı görüntülere dahil edilmesi nadirdir . Bu görüntüyü temel olarak kullanarak, ihtiyaç duyduğunuz şeyleri kendi Dockerfile'ınıza ekleyin ( aşina değilseniz paketlerin nasıl kurulacağına dair örnekler için alpine
görüntü açıklamasına bakın ).
openjdk:<version>-windowsservercore
Bu görüntü, Windows Server Core'a ( microsoft/windowsservercore
) dayanmaktadır . Bu nedenle, yalnızca Windows 10 Professional / Enterprise (Anniversary Edition) veya Windows Server 2016 gibi bu görüntünün yaptığı yerlerde çalışır.
Docker'ın Windows üzerinde nasıl çalıştırılacağı hakkında bilgi için lütfen Microsoft tarafından sağlanan ilgili "Hızlı Başlangıç" kılavuzuna bakın:
openjdk:<version>-slim
Bu görüntü -headless
, OpenJDK paketini yükler ve bu nedenle kullanıcı arabirimiyle ilgili Java kitaplıklarının birçoğu ve varsayılan etiketin içerdiği bazı ortak paketler eksiktir. Yalnızca Java'yı çalıştırmak için gereken minimum paketleri içerir. Nerede bir ortamda çalışıyoruz sürece
sadeceopenjdk
görüntü görev yapacak ve mekan kısıtlamaları var, biz çok bu depo varsayılan görüntüsünü kullanılması önerilir.