Docker tutorial with example in hindi
Docker एक open-source प्लेटफ़ॉर्म है जो डेवलपर्स और ऑपरेशन्स टीमों को एप्लिकेशन्स को पैकेज, डिप्लॉय और रन करने के लिए एक यूनिफ़ॉर्म वातावरण प्रदान करता है। Docker कंटेनराइजेशन तकनीक का उपयोग करता है, जिससे एप्लिकेशन्स को एक ऐसे वातावरण में रन किया जा सकता है, जिसमें सभी आवश्यक लाइब्रेरी और डिपेंडेंसीज़ पहले से इंस्टॉल होती हैं। इससे एप्लिकेशन की portability, scalability और deployability बहुत आसान हो जाती है।
इस ट्यूटोरियल में, हम Docker को समझेंगे और इसके उपयोग के उदाहरण देखेंगे।
1. Docker क्या है?
Docker एक platform है जो कंटेनर के रूप में एप्लिकेशन्स को पैकेज और डिप्लॉय करने के लिए उपयोग होता है। कंटेनर एक तरह का हल्का, पोर्टेबल, और स्केलेबल environment होता है जिसमें एप्लिकेशन और उसके सभी डिपेंडेंसीज़ एक साथ पैक हो जाते हैं, जिससे एप्लिकेशन को किसी भी जगह पर आसानी से रन किया जा सकता है।
2. Docker इंस्टॉलेशन
Docker को Linux पर इंस्टॉल करें:
Docker की डिपेंडेंसीज़ को अपडेट करें:
Docker का GPG Key जोड़ें:
Docker का रिपॉजिटरी जोड़ें:
Docker को इंस्टॉल करें:
Docker की स्थिति चेक करें:
Docker को Windows और Mac पर इंस्टॉल करें:
Windows और Mac के लिए Docker Desktop उपलब्ध है। इसे Docker Desktop डाउनलोड पेज से डाउनलोड और इंस्टॉल किया जा सकता है। इंस्टॉलेशन के बाद, Docker Desktop को लॉन्च करें और Docker daemon रन होगा।
3. Docker के मुख्य तत्व
Docker Image: Docker Image एक template होती है, जिसका उपयोग Docker कंटेनर को बनाने के लिए किया जाता है। यह एप्लिकेशन के रन करने के लिए आवश्यक सभी डिपेंडेंसीज़ और फाइलों को पैक करती है।
Docker Container: Docker कंटेनर एक हल्का वर्चुअल वातावरण होता है, जो Docker Image को रन करने पर बनता है। कंटेनर को अलग-अलग वातावरण में रन किया जा सकता है।
Dockerfile: Dockerfile एक स्क्रिप्ट होती है, जिसमें निर्देश होते हैं कि एक Docker Image को कैसे बनाया जाए। इसमें एप्लिकेशन के रन करने के लिए आवश्यक इंस्टॉलेशन, कॉन्फ़िगरेशन, और अन्य स्टेप्स होते हैं।
Docker Hub: Docker Hub एक क्लाउड-बेस्ड रेजिस्ट्री है, जहां पर आप Docker Images को स्टोर और शेयर कर सकते हैं। यहां से आप सार्वजनिक Docker Images को डाउनलोड कर सकते हैं।
4. Docker का बेसिक उपयोग
(i) Docker Image डाउनलोड करना:
Docker Hub से Docker Image डाउनलोड करने के लिए docker pull
कमांड का उपयोग किया जाता है। उदाहरण के लिए, Ubuntu का Docker Image डाउनलोड करने के लिए:
(ii) Docker Image की सूची देखना:
आपके द्वारा डाउनलोड किए गए सभी Docker Images की सूची देखने के लिए:
(iii) Docker कंटेनर रन करना:
Docker कंटेनर रन करने के लिए docker run
कमांड का उपयोग किया जाता है। उदाहरण के लिए, Ubuntu कंटेनर को रन करने के लिए:
यह कमांड Ubuntu कंटेनर को इंटरएक्टिव मोड में रन करेगा। आप कंटेनर के अंदर शेल में प्रवेश करेंगे।
(iv) Docker कंटेनर की सूची देखना:
रन हो रहे सभी कंटेनरों की सूची देखने के लिए:
यदि आपको सभी कंटेनर (रन हो रहे और बंद) देखने हैं तो:
(v) Docker कंटेनर को रोकना:
रन हो रहे Docker कंटेनर को रोकने के लिए docker stop
कमांड का उपयोग करें। उदाहरण:
यहां <container_id>
उस कंटेनर का ID है जिसे आप रोकना चाहते हैं।
5. Dockerfile और Docker Image बनाना
Dockerfile एक स्क्रिप्ट होती है जो बताती है कि Docker Image को कैसे बनाना है। एक सामान्य Dockerfile निम्नलिखित रूप में होता है:
Example: Dockerfile
यह Dockerfile एक Ubuntu बेस इमेज से शुरू होता है, Python और उसके पैकेज इंस्टॉल करता है, और फिर एप्लिकेशन की फाइल्स को कंटेनर में कॉपी करता है। अंत में, यह python3 app.py
कमांड को रन करने के लिए सेट करता है।
(i) Docker Image बनाना:
Dockerfile से Docker Image बनाने के लिए निम्नलिखित कमांड का उपयोग किया जाता है:
यह myapp
नाम से एक Docker Image बनाएगा।
(ii) Docker Image को रन करना:
यह आपके एप्लिकेशन को कंटेनर में रन करेगा।
6. Docker Compose क्या है?
Docker Compose एक टूल है जो आपको मल्टी-कंटेनर एप्लिकेशन्स को आसानी से डिप्लॉय करने की सुविधा देता है। इससे आप एक YAML फाइल (docker-compose.yml) में एप्लिकेशन के कंटेनरों की सर्विसेस को डिफाइन कर सकते हैं।
Example: Docker Compose YAML फाइल
इस YAML फाइल में, दो सर्विसेस डिफाइन की गई हैं — web
(nginx कंटेनर) और app
(कस्टम एप्लिकेशन)। depends_on
से यह सुनिश्चित होता है कि app
कंटेनर web
कंटेनर के बाद स्टार्ट होगा।
(i) Docker Compose से कंटेनर रन करना:
यह कमांड दोनों कंटेनरों को रन करेगा।
(ii) Docker Compose को बैकग्राउंड में रन करना:
7. Docker नेटवर्किंग
Docker कंटेनरों के बीच नेटवर्किंग का मतलब है कि वे एक दूसरे से कनेक्ट कर सकें। Docker कंटेनर एक अलग नेटवर्क पर रन होते हैं, जिससे उनके बीच संचार आसानी से हो सकता है।
(i) Docker नेटवर्क बनाने के लिए:
(ii) Docker कंटेनर को नेटवर्क से जोड़ना:
8. Docker के फायदे
- पोर्टेबिलिटी: Docker कंटेनर के भीतर एप्लिकेशन अपने सभी डिपेंडेंसी के साथ पैक होता है, जिससे इसे किसी भी प्लेटफ़ॉर्म पर चलाया जा सकता है।
- लाइटवेट: Docker कंटेनर वर्चुअल मशीन के मुकाबले हल्के होते हैं और कम संसाधनों का उपयोग करते हैं।
- स्केलेबिलिटी: Docker कंटेनरों को जल्दी से स्केल किया जा सकता है। एक एप्लिकेशन के लिए कई कंटेनर बनाए जा सकते हैं और वे एक दूसरे के साथ काम कर सकते हैं।
- कंटेनराइजेशन: एप्लिकेशन और उसकी डिपेंडेंसीज़ को कंटेनर में पैक किया जाता है, जिससे सर्वर के ऑपरेटिंग सिस्टम से अलग होकर एप्लिकेशन चलती है।
निष्कर्ष
Docker एक बहुत ही उपयोगी टूल है जो एप्लिकेशन्स को कंटेनर में पैक करके पोर्टेबल और स्केलेबल बनाता है। इसके द्वारा हम आसानी से एप्लिकेशन्स को विभिन्न वातावरणों में रन कर सकते हैं। इस ट्यूटोरियल में हमने Docker की बुनियादी कमांड्स, Dockerfile, Docker Compose, और नेटवर्किंग के बारे में जानकारी प्राप्त की है। Docker को सीखने से आप अपनी डेवलपमेंट और डिप्लॉयमेंट प्रक्रियाओं को बहुत ही सरल और तेज बना सकते हैं।
Comments
Post a Comment