प्रति docker लाइब्रेरी डॉक्स (उद्धरण और लिंक नीचे), यहां एक सारांश है:
डिफैक्टो छवि। अनिश्चित होने पर इसका उपयोग करें।
openjdk:<version>-buster
, openjdk:<version>-stretch
औरopenjdk:<version>-jessie
buster
, jessie
या डेबियन कीstretch
रिलीज़ के लिए सुइट कोड नाम हैं और संकेत देते हैं कि कौन सी छवि जारी है।
इसी तरह, यह छवि अल्पाइन लिनक्स पर आधारित है, इस प्रकार यह बहुत छोटी आधार छवि है। यह अनुशंसा की जाती है यदि आपको एक छवि आकार की आवश्यकता है जितना संभव हो उतना छोटा है। चेतावनी यह है कि यह कुछ असामान्य काम करता है, लेकिन अधिकांश सॉफ्टवेयर के लिए समस्या नहीं होनी चाहिए। संदेह में, नीचे दिए गए आधिकारिक डॉक्स की जांच करें।
openjdk:<version>
(12 बाद से), openjdk:<version>-oracle
औरopenjdk:<version>-oraclelinux7
के साथ शुरू openjdk:12
डिफ़ॉल्ट छवि के साथ-साथ -oracle
और -oraclelinux7
वेरिएंट अधिकारी पर आधारित होते हैं ओरेकल लिनक्स 7 छवि । डिफ़ॉल्ट छवि में OpenJDK binaries के साथ-साथ -oracle
और -oraclelinux7
वेरिएंट ओरेकल द्वारा निर्मित कर रहे हैं और से प्राप्त कर रहे हैं OpenJDK समुदाय ।
इस छवि में केवल जावा को चलाने के लिए आवश्यक न्यूनतम पैकेज हैं (और उदाहरण के लिए, यूआई-संबंधित जावा पुस्तकालयों में से कई को याद कर रहे हैं)। जब तक आप एक वातावरण में काम कर रहे हैं, जहां केवलopenjdk
छवि तैनात किया जाएगा और आप स्थान की कमी है, डिफ़ॉल्ट छवि यह एक से अधिक की सिफारिश की है।
openjdk:<version>-windowsservercore
यह चित्र विंडोज सर्वर कोर ( microsoft/windowsservercore
) पर आधारित है ।
पूर्ण डॉक्स ( यहां नीचे दिखाया गया संस्करण , यहां नवीनतम संस्करण ):
छवि वेरिएंट
openjdk
छवियों कई जायके, एक विशिष्ट उपयोग के लिए डिज़ाइन किया गया प्रत्येक में आते हैं।
openjdk:<version>
यह डिफैक्टो छवि है। यदि आप इस बारे में अनिश्चित हैं कि आपकी आवश्यकताएं क्या हैं, तो आप शायद इस एक का उपयोग करना चाहते हैं। यह दोनों को दूर फेंक कंटेनर के रूप में उपयोग करने के लिए डिज़ाइन किया गया है (अपने स्रोत कोड को माउंट करें और अपने ऐप को शुरू करने के लिए कंटेनर शुरू करें), साथ ही साथ अन्य छवियों को बनाने के लिए आधार।
इनमें से कुछ टैगों में जेसी या खिंचाव जैसे नाम हो सकते हैं। ये डेबियन की रिलीज़ के लिए सुइट कोड नाम
हैं और संकेत करते हैं कि कौन सी छवि जारी है।
openjdk:<version>-alpine
यह छवि लोकप्रिय अल्पाइन लिनक्स परियोजना पर आधारित है , जो alpine
आधिकारिक छवि में उपलब्ध है । अल्पाइन लिनक्स अधिकांश वितरण बेस छवियों (~ 5 एमबी) की तुलना में बहुत छोटा है, और इस तरह सामान्य रूप से बहुत स्लिमर छवियों की ओर जाता है।
यह वैरिएंट अत्यधिक अनुशंसित है जब अंतिम छवि का आकार जितना संभव हो उतना छोटा है। नोट करने के लिए मुख्य चेतावनी यह है कि यह glibc और दोस्तों के बजाय musl libc का उपयोग करता है , इसलिए कुछ सॉफ्टवेयर उनके libc आवश्यकताओं की गहराई के आधार पर मुद्दों में चला सकते हैं। हालाँकि, अधिकांश सॉफ़्टवेयर में यह समस्या नहीं होती है, इसलिए यह संस्करण आमतौर पर एक बहुत ही सुरक्षित विकल्प होता है। देखें इस हैकर समाचार टिप्पणी थ्रेड मुद्दों है कि पैदा हो सकता है और अल्पाइन आधारित छवियों का उपयोग करने के कुछ समर्थक / चोर तुलना की अधिक चर्चा के लिए।
छवि का आकार कम करने के लिए, यह अल्पाइन-आधारित छवियों में शामिल होने के लिए अतिरिक्त संबंधित उपकरणों (जैसे कि git
या bash
) के लिए असामान्य है । इस छवि को आधार के रूप में उपयोग करते हुए, अपनी ज़रूरत की चीज़ों को अपने डॉकरफ़ाइल में जोड़ें ( यदि आप अपरिचित हैं तो पैकेजों को कैसे स्थापित किया जाए, इसके उदाहरणों के लिए alpine
छवि विवरण देखें )।
openjdk:<version>-windowsservercore
यह चित्र विंडोज सर्वर कोर ( microsoft/windowsservercore
) पर आधारित है । जैसे, यह केवल उन जगहों पर काम करता है जो कि छवि करता है, जैसे कि विंडोज 10 प्रोफेशनल / एंटरप्राइज (एनिवर्सरी एडिशन) या विंडोज सर्वर 2016।
विंडोज पर डॉक कैसे प्राप्त करें, इसके बारे में जानकारी के लिए, कृपया Microsoft द्वारा प्रदान किया गया प्रासंगिक "क्विक स्टार्ट" गाइड देखें:
openjdk:<version>-slim
यह छवि -headless
OpenJDK के पैकेज को स्थापित करती है और इसलिए UI से संबंधित जावा पुस्तकालयों और डिफ़ॉल्ट टैग में निहित कुछ सामान्य पैकेजों को याद कर रही है। इसमें केवल जावा चलाने के लिए आवश्यक न्यूनतम पैकेज हैं। जब तक आप एक वातावरण में काम कर रहे हैं, जहां
केवलopenjdk
छवि तैनात किया जाएगा और आप स्थान की कमी है, हम अत्यधिक इस भंडार की डिफ़ॉल्ट छवि का उपयोग करें।