डॉकर ट्यूटोरियल - डॉकर और कंटेनरीकरण का परिचय



इस Docker Tutorial में, आप Docker के पीछे की आवश्यकता को समझेंगे और Docker का परिचय प्राप्त करेंगे। यह डॉकर ट्यूटोरियल सीरीज़ का पहला ब्लॉग है

मुझे उम्मीद है कि आपने पहले DevOps Tutorial ब्लॉग की श्रृंखला को याद नहीं किया होगा। के माध्यम से जाओ यहाँ।डॉकटर कंटेनर की अप्राप्य प्रवृत्ति बढ़ रही है और संगठन पेशेवरों को रखने के लिए देख रहे हैं अब इस बार, हम आपको एक परिचय टू डॉकर के माध्यम से लेकर चलेंगे।

डॉकर ट्यूटोरियल

यह डॉकर ट्यूटोरियल ब्लॉग आपको डोकर के लिए वैचारिक और व्यावहारिक प्रदर्शन देगा - एक नए युग का कंटेनरीकरण तकनीक।





इस ब्लॉग में, हम निम्न विषयों पर ध्यान केंद्रित करेंगे:

  • वर्चुअलाइजेशन क्या है?
  • कंटेनरीकरण क्या है
  • वर्चुअलाइजेशन पर कंटेनरकरण के लाभ
  • डॉकर का परिचय
  • डॉकटर के लाभ
  • वर्चुअलाइजेशन बनाम कंटेनरीकरण
  • डॉकर स्थापना
  • Dockerfile, Docker Image और Docker कंटेनर
  • डॉकटर हब क्या है?
  • डॉकर वास्तुकला
  • डॉकटर कम्पोज

डॉकर लोकप्रियता प्राप्त कर रहा है और इसका उपयोग जंगल की आग की तरह फैल रहा है। डॉकर की बढ़ती लोकप्रियता का कारण यह है कि इसका उपयोग आईटी संगठन में किस हद तक किया जा सकता है। बहुत कम उपकरण हैं, जिनमें दोनों डेवलपर्स के साथ-साथ सिस्टम प्रशासकों के लिए भी उपयोगी है। डॉकर एक ऐसा उपकरण है जो वास्तव में अपने वादे पर खरा उतरता है का निर्माण , समुंद्री जहाज तथा Daud



सरल शब्दों में, डॉकर एक सॉफ्टवेयर कंटेनरीकरण प्लेटफ़ॉर्म है, जिसका अर्थ है कि आप अपने एप्लिकेशन का निर्माण कर सकते हैं, उन्हें अपनी निर्भरता के साथ एक कंटेनर में पैकेज कर सकते हैं और फिर इन कंटेनरों को अन्य मशीनों पर चलाने के लिए आसानी से भेजा जा सकता है।

उदाहरण के लिए: आइए एक लिनक्स आधारित एप्लिकेशन पर विचार करें जो रूबी और पायथन दोनों में लिखा गया है। इस एप्लिकेशन के लिए लिनक्स, रूबी और पायथन के एक विशिष्ट संस्करण की आवश्यकता होती है। उपयोगकर्ता के अंत में किसी भी संस्करण के टकराव से बचने के लिए, एप्लिकेशन के साथ स्थापित रूबी और पायथन के आवश्यक संस्करणों के साथ एक लिनक्स डॉक कंटेनर बनाया जा सकता है। अब अंत उपयोगकर्ता निर्भरता या किसी भी संस्करण संघर्ष के बारे में चिंता किए बिना इस कंटेनर को चलाकर आसानी से एप्लिकेशन का उपयोग कर सकते हैं।

ये कंटेनर कंटेनरीकरण का उपयोग करते हैं जिसे वर्चुअलाइजेशन के विकसित संस्करण के रूप में माना जा सकता है। वर्चुअल मशीन का उपयोग करके समान कार्य भी प्राप्त किया जा सकता है, हालांकि यह बहुत कुशल नहीं है।



मुझे आम तौर पर इस बिंदु पर एक सवाल मिलता है, यानी वर्चुअलाइजेशन और कंटेनरीकरण में क्या अंतर है? ये दोनों पद एक-दूसरे से बहुत मिलते-जुलते हैं। तो, मैं आपको पहले बता दूं कि वर्चुअलाइजेशन क्या है?

वर्चुअलाइजेशन क्या है?

वर्चुअलाइजेशन एक होस्ट ऑपरेटिंग सिस्टम के शीर्ष पर अतिथि ऑपरेटिंग सिस्टम को आयात करने की तकनीक है। यह तकनीक शुरुआत में एक रहस्योद्घाटन थी क्योंकि यह डेवलपर्स को एक ही मेजबान पर चलने वाली विभिन्न आभासी मशीनों में कई ऑपरेटिंग सिस्टम चलाने की अनुमति देता था। इससे अतिरिक्त हार्डवेयर संसाधन की आवश्यकता समाप्त हो गई। वर्चुअल मशीन या वर्चुअलाइजेशन के फायदे हैं:

शुरुआती के लिए वसंत पीवीसी ट्यूटोरियल
  • एक ही मशीन पर कई ऑपरेटिंग सिस्टम चल सकते हैं
  • विफलता की स्थिति में रखरखाव और रिकवरी आसान थी
  • बुनियादी ढांचे की कम आवश्यकता के कारण स्वामित्व की कुल लागत भी कम थी

वर्चुअल मशीन आर्किटेक्चर - डॉकर के परिचय पर डॉकटर ट्यूटोरियल - एडुर्का

दाईं ओर आरेख में, आप देख सकते हैं कि एक मेजबान ऑपरेटिंग सिस्टम है जिस पर 3 अतिथि ऑपरेटिंग सिस्टम चल रहे हैं जो वर्चुअल मशीनों के अलावा कुछ भी नहीं है।

जैसा कि आप जानते हैं कि कुछ भी सही नहीं है, वर्चुअलाइजेशन में कुछ कमियां भी हैं। एक ही होस्ट ऑपरेटिंग सिस्टम में कई वर्चुअल मशीन चलाने से प्रदर्शन में गिरावट आती है। इसका कारण है कि अतिथि OS होस्ट OS के शीर्ष पर चल रहा है, जिसकी अपनी कर्नेल और लाइब्रेरी और निर्भरताएँ होंगी। यह सिस्टम संसाधनों का एक बड़ा हिस्सा लेता है, अर्थात् हार्ड डिस्क, प्रोसेसर और विशेष रूप से रैम।

वर्चुअलाइजेशन का उपयोग करने वाली वर्चुअल मशीन के साथ एक और समस्या यह है कि इसमें बूट-अप करने में लगभग एक मिनट लगता है।वास्तविक समय के अनुप्रयोगों के मामले में यह बहुत महत्वपूर्ण है।

वर्चुअलाइजेशन के नुकसान निम्नलिखित हैं:

  • कई वर्चुअल मशीन चलाने से अस्थिर प्रदर्शन होता है
  • Hypervisers मेजबान ऑपरेटिंग सिस्टम के रूप में कुशल नहीं हैं
  • बूट अप प्रक्रिया लंबी है और इसमें समय लगता है

इन कमियों ने कंटेनरीकरण नामक एक नई तकनीक का उदय किया। अब मैं आपको कंटेनरीकरण के बारे में बताता हूं।

कंटेनरीकरण क्या है?

कंटेनरीकरण ऑपरेटिंग सिस्टम स्तर पर वर्चुअलाइजेशन लाने की तकनीक है। वर्चुअलाइजेशन हार्डवेयर में अमूर्तता लाता है, वहीं कंटेनरीकरण ऑपरेटिंग सिस्टम में अमूर्तता लाता है। ध्यान दें कि कंटेनरीकरण भी एक प्रकार का वर्चुअलाइजेशन है। कंटेनरीकरण हालांकि अधिक कुशल है क्योंकि यहां कोई अतिथि ओएस नहीं है और एक मेजबान के ऑपरेटिंग सिस्टम का उपयोग करता है, प्रासंगिक पुस्तकालयों और संसाधनों को साझा करें जब उन्हें वर्चुअल मशीनों के विपरीत आवश्यक हो। मेज़बान कर्नेल पर अनुप्रयोग विशिष्ट बायनेरिज़ और लाइब्रेरीज़ चलते हैं, जो प्रसंस्करण और निष्पादन को बहुत तेज़ करता है। यहां तक ​​कि एक कंटेनर में बूटिंग-अप केवल एक सेकंड का एक अंश होता है। क्योंकि सभी कंटेनर साझा करते हैं, ऑपरेटिंग सिस्टम को होस्ट करते हैं और केवल एप्लिकेशन से संबंधित बायनेरीज़ और लाइब्रेरीज़ रखते हैं। वे वर्चुअल मशीनों की तुलना में हल्के और तेज हैं।

वर्चुअलाइजेशन पर कंटेनरकरण के लाभ:

  • एक ही OS कर्नेल पर कंटेनर हल्के और छोटे होते हैं
  • VMs की तुलना में बेहतर संसाधन उपयोग
  • बूट-अप प्रक्रिया छोटी है और कुछ सेकंड लगते हैं

दाईं ओर आरेख में, आप देख सकते हैं कि एक मेजबान ऑपरेटिंग सिस्टम है जो सभी कंटेनरों द्वारा साझा किया गया है। कंटेनरों में केवल अनुप्रयोग विशिष्ट पुस्तकालय होते हैं जो प्रत्येक कंटेनर के लिए अलग होते हैं और वे तेज़ होते हैं और किसी भी संसाधन को बर्बाद नहीं करते हैं।

इन सभी कंटेनरों को कंटेनरीकरण परत द्वारा नियंत्रित किया जाता है जो मेजबान ऑपरेटिंग सिस्टम के मूल निवासी नहीं हैं। इसलिए एक सॉफ्टवेयर की आवश्यकता है, जो आपको अपने होस्ट ऑपरेटिंग सिस्टम पर कंटेनर बनाने और चलाने में सक्षम कर सके।

Docker की गहरी समझ के लिए इस Docker ट्यूटोरियल वीडियो को देखें।

शुरुआती के लिए डॉकर ट्यूटोरियल | डॉकटर क्या है? | DevOps टूल्स | Edureka

अब, मैं आपको डॉकटर के परिचय के माध्यम से बताता हूं।

डॉकर ट्यूटोरियल - डॉकर का परिचय

Docker एक कंटेनरीकरण प्लेटफ़ॉर्म है जो आपके एप्लिकेशन और उसकी सभी निर्भरताओं को एक साथ कंटेनर के रूप में पैकेज करता है ताकि यह सुनिश्चित हो सके कि आपका एप्लिकेशन किसी भी वातावरण में मूल रूप से काम करता है।

जैसा कि आप दाईं ओर आरेख में देख सकते हैं, प्रत्येक एप्लिकेशन एक अलग कंटेनर पर चलेगा और इसमें पुस्तकालयों और निर्भरताओं का अपना सेट होगा। यह यह भी सुनिश्चित करता है कि प्रक्रिया स्तर अलगाव है, जिसका अर्थ है कि प्रत्येक एप्लिकेशन अन्य अनुप्रयोगों से स्वतंत्र है, डेवलपर्स को यह सुनिश्चित करते हुए कि वे उन अनुप्रयोगों का निर्माण कर सकते हैं जो एक दूसरे के साथ हस्तक्षेप नहीं करेंगे।

एक डेवलपर के रूप में, मैं एक कंटेनर का निर्माण कर सकता हूं, जिस पर अलग-अलग एप्लिकेशन इंस्टॉल किए गए हैं और इसे मेरी क्यूए टीम को दे सकते हैं, जिसे केवल डेवलपर वातावरण को दोहराने के लिए कंटेनर को चलाने की आवश्यकता होगी।

डॉकटर के लाभ

अब, क्यूए टीम को कोड का परीक्षण करने के लिए सभी निर्भर सॉफ़्टवेयर और एप्लिकेशन इंस्टॉल करने की आवश्यकता नहीं है और इससे उन्हें बहुत समय और ऊर्जा बचाने में मदद मिलती है। यह यह भी सुनिश्चित करता है कि विकास से लेकर परिनियोजन तक, इस प्रक्रिया में शामिल सभी व्यक्तियों के लिए काम करने का वातावरण सुसंगत है। सिस्टम की संख्या को आसानी से बढ़ाया जा सकता है और कोड को आसानी से उन पर तैनात किया जा सकता है।

वर्चुअलाइजेशन बनाम कंटेनरीकरण

वर्चुअलाइजेशन और कंटेनरीकरण दोनों आपको एक मेजबान मशीन के अंदर कई ऑपरेटिंग सिस्टम चलाने देते हैं।

वर्चुअलाइजेशन एक ही मेजबान मशीन में कई ऑपरेटिंग सिस्टम बनाने से संबंधित है। दूसरी ओर कंटेनरीकरण आवश्यकतानुसार हर प्रकार के आवेदन के लिए कई कंटेनर बनाएगा।

बड़ा डेटा और हैडूप क्या है

चित्र: बिग डेटा एनालिटिक्स क्या है - वर्चुअलाइजेशन बनाम कंटेनरीकरण

जैसा कि हम छवि से देख सकते हैं, प्रमुख अंतर यह है कि वर्चुअलाइजेशन में कई गेस्ट ऑपरेटिंग सिस्टम हैं जो कंटेनर में अनुपस्थित हैं। कंटेनरीकरण का सबसे अच्छा हिस्सा यह है कि यह भारी वर्चुअलाइजेशन की तुलना में बहुत हल्का है।

अब, डॉकर को स्थापित करते हैं।

डॉकर स्थापित करें:

मैं अपने उबंटू 17.10 मशीन में डॉकर स्थापित करूंगा। निम्नलिखित डॉकर स्थापित करने के लिए कदम हैं:

  1. आवश्यक पैकेज स्थापित करें
  2. सेटअप डॉकर रिपॉजिटरी
  3. उबंटू पर डॉकटर स्थापित करें

1. आवश्यक पैकेज स्थापित करें:

डॉकर को स्थापित करने के लिए आपके सिस्टम में कुछ विशेष पैकेजों की आवश्यकता होती है। उन पैकेजों को स्थापित करने के लिए नीचे दिए गए आदेश को निष्पादित करें।

sudo apt-get install कर्ल apt-transport-https ca- सर्टिफिकेट सॉफ्टवेयर-प्रॉपर्टीज-कॉमन

2. सेटअप डॉकर रिपोजिटरी:

अब, डॉकर्स आधिकारिक GPG कुंजी को apt-get के साथ स्थापित करने से पहले संकुल हस्ताक्षर को सत्यापित करने के लिए आयात करें। टर्मिनल पर निम्न कमांड चलाएँ:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add

अब, अपने उबंटू सिस्टम पर डॉकर रिपॉजिटरी जोड़ें जिसमें डोकर पैकेज पर निर्भरताएं शामिल हैं, इसके लिए नीचे दिए गए विवरण निष्पादित करें:

sudo add-apt-repository 'deb [arch = amd64] https://download.docker.com/linux/ubuntu $ (lsb_release -cs) स्थिर'

3. Ubuntu पर डॉकर स्थापित करें:

अब आपको उपयुक्त इंडेक्स अपग्रेड करने और डॉकर कम्युनिटी एडिशन को इंस्टॉल करने की जरूरत है, इसके लिए नीचे दिए गए कमांड्स निष्पादित करें:

sudo apt-get update sudo apt-get install डूकर-सी

बधाई हो! आपने सफलतापूर्वक डॉकर स्थापित किया है। इसके अलावा, कुछ आमतौर पर इस्तेमाल किया जा रहा है डॉकटर कमांड

अब हम कुछ महत्वपूर्ण डॉकर अवधारणाओं को देखते हैं।

Dockerfile, Docker Image और Docker कंटेनर:

  1. एक डॉकर इमेज एक कमांड द्वारा बनाई गई है, जिसे डॉकफेराइल नामक फाइल में लिखा गया है।
  2. जब इस डॉकरफाइल को एक डॉक कमांड का उपयोग करके निष्पादित किया जाता है, तो इसका परिणाम एक नाम के साथ डॉकर छवि में होता है।
  3. जब इस छवि को 'डॉक रन' कमांड द्वारा निष्पादित किया जाता है, तो यह अपने आप ही शुरू कर देगा जो भी एप्लिकेशन या सेवा को इसके निष्पादन पर शुरू करना होगा।

डॉकटर हब:

Docker हब डॉकटर इमेज के लिए GitHub की तरह है। यह मूल रूप से एक क्लाउड रजिस्ट्री है जहां आप विभिन्न समुदायों द्वारा अपलोड की गई डॉकरों की छवियां पा सकते हैं, साथ ही आप अपनी खुद की छवि विकसित कर सकते हैं और डॉकर हब पर अपलोड कर सकते हैं, लेकिन पहले, आपको डॉकरहब पर एक खाता बनाने की आवश्यकता है।

वसंत में पूजो क्या है

डॉकर वास्तुकला:

इसमें एक डॉक इंजन शामिल है जो तीन प्रमुख घटकों के साथ एक क्लाइंट-सर्वर अनुप्रयोग है:

  1. एक सर्वर जो एक प्रकार का लंबे समय तक चलने वाला प्रोग्राम है जिसे डेमॉन प्रोसेस (docker कमांड) कहा जाता है।
  2. एक रीस्ट एपीआई जो उन इंटरफेस को निर्दिष्ट करता है जो प्रोग्राम डेमन से बात करने के लिए उपयोग कर सकते हैं और यह निर्देश दे सकते हैं कि क्या करना है।
  3. एक कमांड लाइन इंटरफ़ेस (CLI) क्लाइंट (docker कमांड)।
  4. CLI स्क्रिप्टिंग या प्रत्यक्ष CLI कमांड के माध्यम से Docker डेमन के साथ नियंत्रण या बातचीत करने के लिए Docker REST API का उपयोग करता है। कई अन्य डॉकर एप्लिकेशन अंतर्निहित API और CLI का उपयोग करते हैं।

इस ब्लॉग का संदर्भ लें, और अधिक पढ़ने के लिए

अंत में इस Docker Tutorial ब्लॉग में मैं Docker Compose के बारे में बात करूंगा।

डॉकटर रचना:

Docker Compose को मूल रूप से एक सर्वर के रूप में कई Docker कंटेनरों को चलाने के लिए उपयोग किया जाता है। मैं आपको एक उदाहरण देता हूं:

मान लीजिए अगर मेरे पास एक एप्लिकेशन है जिसमें वर्डप्रेस, मारिया डीबी और पीएचपी मायएडमिन की आवश्यकता होती है। मैं एक ऐसी फाइल बना सकता हूं, जो दोनों कंटेनरों को एक सेवा के रूप में शुरू करे बिना हर एक को अलग से शुरू करने की आवश्यकता है। यह वास्तव में उपयोगी है, खासकर यदि आपके पास एक माइक्रोसैस आर्किटेक्चर है।

मेरे ब्लॉग को देखें डॉकटर कंटेनर यह समझने के लिए कि इसे व्यावहारिक रूप से कैसे निष्पादित किया जाए।

इसके अलावा, आप इस ब्लॉग को पढ़ सकते हैं कि कैसे आप डॉकर कंपोज़ का उपयोग करके एक स्टैक एप्लिकेशन का उपयोग कर सकते हैं।

इसके साथ, हम डॉकर ट्यूटोरियल के पहले ब्लॉग से परिचय टू डॉकर एंड कन्टेरियलाइज़ेशन के अंत में आते हैं।

डॉकर पर हमारे अगले ब्लॉग पर जाएँ:

अब जब आप समझ गए हैं कि DevOps क्या है, तो हमारी जाँच करें 250,000 से अधिक संतुष्ट शिक्षार्थियों के एक नेटवर्क के साथ एक विश्वसनीय ऑनलाइन शिक्षण कंपनी, एडुरेका द्वारा, दुनिया भर में फैली हुई है। Edureka DevOps प्रमाणन प्रशिक्षण पाठ्यक्रम SDLC में कई चरणों को स्वचालित करने के लिए शिक्षार्थियों को विभिन्न DevOps प्रक्रियाओं और टूल जैसे कठपुतली, जेनकिंस, नागियोस, Ansible, शेफ, साल्टस्टैक और GIT में विशेषज्ञता प्राप्त करने में मदद करता है।

क्या आप हमसे कोई प्रश्न पूछना चाहते हैं? कृपया टिप्पणी अनुभाग में इसका उल्लेख करें और हम आपके पास वापस आ जाएंगे।