यहां बताया गया है कि विंडोज़ पर सर्वश्रेष्ठ डॉकर अनुभव कैसे प्राप्त करें।

लिनक्स 2 के लिए विंडोज सबसिस्टम विंडोज 10 और 11 पर एक अभूतपूर्व उपकरण है, और डॉकर के साथ मूल रूप से एकीकृत होता है। डेवलपर्स के रूप में, यह समझना आवश्यक है कि ये सॉफ़्टवेयर क्या प्रदान करते हैं और आप अपने Docker-WSL 2 सेटअप का अधिकतम लाभ कैसे उठा सकते हैं।

डॉकर क्या है?

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

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

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

instagram viewer

WSL 2 पर डॉकर का उपयोग कैसे करें

डॉकर सभी प्रमुख ऑपरेटिंग सिस्टम, जैसे विंडोज, मैकओएस और लिनक्स के साथ संगत है। यदि आप विंडोज 10 या 11 पर हैं, तो आप डॉकर डेस्कटॉप के माध्यम से डॉकर का उपयोग कर सकते हैं और इसे Linux 2 के लिए Windows सबसिस्टम के साथ एकीकृत करें बेहतर प्रदर्शन के लिए। आप विंडोज के लिए डॉकर डेस्कटॉप को आधिकारिक डॉकर वेबसाइट.

Linux (WSL) के लिए Windows सबसिस्टम एक महत्वपूर्ण विशेषता है जो Windows उपयोगकर्ताओं को वर्चुअल मशीन या डुअल-बूट सेट किए बिना Ubuntu और Kali जैसे Linux वितरण चलाने की अनुमति देता है।

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

चूंकि डॉकटर कंटेनर मजबूत होते हैं, आप उन्हें अपने सर्वर को होस्ट करने के लिए कॉन्फ़िगर भी कर सकते हैं; nginx docker कंटेनर आमतौर पर वेब सर्वर के रूप में उपयोग किए जाते हैं। इसके अतिरिक्त, आप कई अन्य तरीकों से डॉकर का उपयोग कर सकते हैं:

  • लिनक्स डिस्ट्रोस को आसानी से चलाएं
  • सीखने या परीक्षण उद्देश्यों के लिए एक वेब सर्वर सेट करें
  • पोर्टेबल तैनाती अनुप्रयोगों
  • एप्लिकेशन को एकल छवि फ़ाइल में बंडल करें
  • सरलीकृत सीआई/सीडी पाइपलाइन

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

1. WSL 2 के साथ VS कोड को एकीकृत करें

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

जब आप लिनक्स के लिए विंडोज सबसिस्टम में वीएस कोड को एकीकृत करते हैं, तो आप क्रॉस-प्लेटफॉर्म संगतता को बढ़ाने के लिए इसके विशेष लिनक्स कर्नेल का लाभ उठा सकते हैं। आप WSL 2 के साथ VS कोड के भीतर एकीकृत टर्मिनल का उपयोग करके अपने कार्यप्रवाह को और सुव्यवस्थित कर सकते हैं।

को Windows पर WSL 2 के साथ VS कोड सेट अप करें, आप कॉन्फ़िगर कर सकते हैं डब्ल्यूएसएल वीएस कोड मार्केटप्लेस से विस्तार करें और चीजों को आगे बढ़ाएं।

2. WSL 2 फ़ाइल सिस्टम का उपयोग करें

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

3. मूल लिनक्स लिपियों का प्रयोग करें

कई कंटेनरीकृत परियोजनाएं जिन पर आप काम करेंगे, वे शायद लिनक्स पर ऑटोमेशन के लिए स्क्रिप्ट के साथ आएंगी। आमतौर पर, ये स्क्रिप्ट पहले Linux के लिए विकसित की जाती हैं, और Windows डेवलपर्स प्राथमिकता नहीं हैं।

WSL 2 के साथ, आपकी पूरी टीम समान Linux स्वचालन स्क्रिप्ट का उपयोग कर सकती है, और आपको अपनी टीम के लिए Windows-संगत स्वचालन स्क्रिप्ट बनाए रखने के बारे में चिंता करने की आवश्यकता नहीं है।

4. बेहतर सुरक्षा और प्रदर्शन के लिए BuildKit कॉन्फ़िगर करें

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

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

बिल्डकिट को डिफ़ॉल्ट रूप से सक्षम करने के लिए, आपको ~/.profile कॉन्फ़िगरेशन फ़ाइल में निम्नलिखित परिवर्तन करने चाहिए:

निर्यात DOCKER_BUILDKIT=1.

5. संसाधन सीमाएँ निर्धारित करें

जब आप WSL 2 बैकएंड को डॉकर डेस्कटॉप के साथ एकीकृत करते हैं, तो आप डॉकर को अपने सभी सीपीयू संसाधनों तक पहुंच प्रदान करते हैं। ऐसा करने से उन कंटेनरों के प्रदर्शन में सुधार करने में मदद मिलती है जो संसाधन भारी होते हैं।

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

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

6. कैश्ड मेमोरी पुनर्प्राप्त करें

यदि आप WSL 2 में डॉकटर कंटेनर चला रहे हैं, तो कंटेनर के समाप्त होने के बाद इसकी मेमोरी को मुक्त कर दिया जाना चाहिए। दुर्भाग्य से, ऑपरेटिंग सिस्टम कर्नेल कैश में डेटा बनाए रखता है; इसका अर्थ है कि WSL 2 द्वारा प्राप्त प्रभावी मेमोरी पर्याप्त नहीं होगी।

आप WSL 2 में रूट के माध्यम से निम्नलिखित कमांड चलाकर अनावश्यक रूप से कैश के रूप में उपयोग की जा रही सभी मेमोरी को पुनर्प्राप्त कर सकते हैं:

गूंज 1 > /proc/sys/vm/drop_caches

WSL 2 के साथ बेहतर बनें

WSL 2 विंडोज-आधारित डेवलपर्स के लिए सबसे अच्छी सुविधा है, यह पूरी तरह से बदल रहा है कि डेवलपर्स डॉकर का उपयोग कैसे करते हैं। प्रदर्शन, सुरक्षा और वर्कफ़्लो लचीलेपन में सुधार के लिए डेवलपर्स को WSL के साथ डॉकर का उपयोग करने के सर्वोत्तम तरीकों को समझना चाहिए।