विंडोमैकसॉफ्टवेयरसेटिंग्ससुरक्षाउत्पादकतालिनक्सएंड्रॉइडप्रदर्शनकॉन्फ़िगरेशनएप्पल सभी

Docker के साथ Python अनुप्रयोगों को डिप्लॉय कैसे करें

संपादित 4 सप्ताह पहले द्वारा ExtremeHow संपादकीय टीम

पायथनडॉकरपरिनियोजनकंटेनरविंडोमैकलिनक्सदेवऑप्सवर्चुअलाइजेशनएप्लिकेशनक्लाउडसेटअप

Docker के साथ Python अनुप्रयोगों को डिप्लॉय कैसे करें

अनुवाद अपडेट किया गया 4 सप्ताह पहले

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

Docker को समझना

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

Docker के घटक

अपने अनुप्रयोग को डिप्लॉय करने से पहले, आइए Docker के कुछ प्रमुख घटकों को समझें:

  1. Dockerfile: यह एक टेक्स्ट फ़ाइल है जिसमें छवि को असेंबल करने के लिए सभी आदेश शामिल हैं। यह Docker के लिए एक ब्लूप्रिंट की तरह है, जो Docker को आपके अनुप्रयोग को सुचारू रूप से चलाने के लिए आवश्यक सभी चरणों का विवरण देता है।
  2. Image: यह एक पोर्टेबल, अपरिवर्तनीय फ़ाइल है जिसमें अनुप्रयोग और उसकी निर्भरताएं शामिल होती हैं। यह Dockerfile का आउटपुट होता है जिसमें एक कंटेनर को बनाने के लिए सभी जानकारी होती है।
  3. Container: यह एक छवि का रनटाइम उदाहरण होता है। एक कंटेनर में अनुप्रयोग को चलाने के लिए आवश्यक सभी चीजें होती हैं: कोड, रनटाइम, सिस्टम उपकरण, और पुस्तकालय।
  4. DockerHub: Docker छवियों को साझा करने के लिए एक क्लाउड-आधारित रजिस्ट्री सेवा। यह आपको कंटेनर छवियों को संग्रहीत और वितरित करने की अनुमति देता है। आप इसे Docker छवियों के लिए GitHub के रूप में सोच सकते हैं।

Docker सेटअप करना

Python अनुप्रयोगों को डिप्लॉय करने के लिए Docker का उपयोग शुरू करने के लिए, आपको पहले अपने मशीन पर Docker सेट करना होगा। यहाँ सामान्य कदम दिए गए हैं:

docker --version

आउटपुट में Docker के इंस्टॉल किए गए संस्करण का प्रदर्शन होना चाहिए, जो यह सुनिश्चित करता है कि Docker सफलतापूर्वक सेट हो गया है।

एक साधारण Python अनुप्रयोग बनाना

आइए एक सरल Python अनुप्रयोग बनाने की प्रक्रिया से गुजरें जिसे हम Docker का उपयोग करके डिप्लॉय करेंगे। हमारा अनुप्रयोग एक सरल Python स्क्रिप्ट होगा जो "Hello, World!" प्रिंट करेगा। हालाँकि यह सरल है, यह डिप्लॉयमेंट प्रक्रिया को समझने के लिए सेवा देगा।

अपने प्रोजेक्ट के लिए एक नई निर्देशिका बनाएँ और उसके भीतर app.py नाम की एक फ़ाइल बनाएँ:

print("Hello, World!")

फ़ाइल को सेव करें: इस स्क्रिप्ट, app.py, का आउटपुट बस "Hello, World!" कंसोल में है।

Dockerfile बनाना

अगला, हमें अपने Python स्क्रिप्ट के जैसी निर्देशिका में एक Dockerfile बनाना होगा। इस Dockerfile में हमारे Python अनुप्रयोग को कन्टेनरीकृत करने के लिए Docker के लिए आवश्यक सभी निर्देश होंगे।

  1. अपने प्रोजेक्ट डायरेक्टरी में एक नई फ़ाइल बनाएँ और इसका नाम Dockerfile (बिना किसी एक्सटेंशन के) रखें।
  2. अपने Dockerfile में निम्नलिखित सामग्री को कॉपी करें:
FROM python:3.8-slim
# काम करने की निर्देशिका सेट करें
WORKDIR /app
# कंटेनर में /app पर वर्तमान डायरेक्टरी सामग्री की प्रतिलिपि बनाएँ
COPY . /app
# ऐप लॉन्च होने पर app.py चलाएँ
CMD ["python", "app.py"]

आइए इस Dockerfile को तोड़कर देखें:

Docker छवि बनाना

अब जब हमारे पास एक Dockerfile है, तो समय आ गया है कि एक Docker छवि बनाएँ। यह छवि एक निष्पादन योग्य पैकेज होगा जिसमें हमारे अनुप्रयोग को चलाने के लिए आवश्यक सबकुछ होगा।

अपना टर्मिनल या कमांड प्रॉम्प्ट खोलें, अपने प्रोजेक्ट को खोजने वाली डायरेक्टरी पर जाएँ, और निम्नलिखित कमांड का उपयोग करके Docker छवि बनाएं:

docker build -t hello-world-app .

यह कमांड क्या करती है:

एक बार जब बिल्ड प्रक्रिया पूरी हो जाती है, तो Docker एक छवि create करता है जिसका नाम "hello-world-app" होता है।

Docker कंटेनर चलाना

छवि तैयार होने पर, अब हम कंटेनर के अंदर अपना Python अनुप्रयोग चला सकते हैं। आपके टर्मिनल या कमांड प्रॉम्प्ट में निम्नलिखित कमांड चलाएं:

docker run hello-world-app

यह कमांड Docker को उस छवि के आधार पर एक कंटेनर चलाने के लिए कहती है जो हमने "hello-world-app" के रूप में बनाई थी। यदि सब कुछ सही से सेट होता है, तो आपको आउटपुट दिखाई देना चाहिए:

Hello, World!

यह सरल संदेश इस बात की पुष्टि करता है कि Python अनुप्रयोग Docker कंटेनर के अंदर सफलतापूर्वक निष्पादित हो गया है।

Docker छवियों को साझा करना और प्रकाशित करना

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

  1. सुनिश्चित करें कि आपके पास एक DockerHub खाता है। DockerHub वेबसाइट पर जाकर और साइन अप करके आप मुफ्त में खाता बना सकते हैं।

  2. टर्मिनल से अपने DockerHub खाते में लॉग इन करें:

    docker login

    आपसे आपके DockerHub उपयोगकर्ता नाम और पासवर्ड दर्ज करने के लिए कहा जाएगा।

  3. आपकी छवि को DockerHub पर पुश करने के लिए टैग करें। DockerHub के लिए आवश्यक होता है कि आपकी छवि के बगल में आपका DockerHub उपयोगकर्ता नाम जोड़ा जाए। अपनी छवि को टैग करने के लिए निम्नलिखित कमांड का उपयोग करें, [username] को अपने DockerHub उपयोगकर्ता नाम के साथ बदलें:

    docker tag hello-world-app [username]/hello-world-app
  4. टैग की गई छवि को DockerHub पर पुश करें:

    docker push [username]/hello-world-app

    यह आपकी छवि को DockerHub पर अपलोड करता है, जिससे इसे दूसरों के लिए बनाने या विभिन्न प्लेटफार्मों पर डिप्लॉय करना संभव होता है।

सफाई

Docker का पता लगाने और अपना Python अनुप्रयोग डिप्लॉय करने के बाद, अच्छे अभ्यास के लिए अनावश्यक Docker संसाधनों को साफ करना होता है जैसे कि छवियाँ और कंटेनर जो स्थान घेरते हैं। यहाँ कुछ बुनियादी कमांड हैं:

docker container prune
docker image prune
docker ps -a
docker rm container_id
docker rmi image_id

अपने विशिष्ट मानों के साथ container_id और image_id को बदल दें।

निष्कर्ष

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

यदि आपको लेख की सामग्री में कुछ गलत लगता है, आप कर सकते हैं


टिप्पणियाँ