Mix Release से रिलीज़ बनाना
`mix release` का उपयोग करके अपने Elixir एप्लिकेशन की स्व-निहित और परिनियोजन के लिए तैयार रिलीज़ बनाएँ।
Mix Release से रिलीज़ बनाना, CoddyKit पर Elixir और Phoenix: स्केलेबल बैकएंड विकास का एक निःशुल्क पाठ है। यह 4 में से 1वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Elixir और Phoenix: स्केलेबल बैकएंड विकास सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Elixir और Phoenix: स्केलेबल बैकएंड विकास पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
Elixir रिलीज़ में आपका स्वागत है
जब आप Elixir एप्लिकेशन विकसित करते हैं, तो आप अक्सर इसे mix run --no-halt के साथ चलाते हैं। विकास के लिए यह बहुत अच्छा है, लेकिन प्रोडक्शन के लिए आदर्श नहीं है।
परिनियोजन के लिए हमें ऐसे स्व-निहित पैकेज की आवश्यकता होती है जो स्वतंत्र रूप से चल सके और जिसके लिए लक्ष्य मशीन पर Mix बिल्ड टूल या Elixir के स्रोत कोड की भी आवश्यकता न हो। यहीं रिलीज़ उपयोगी होती हैं!
`mix run` पर्याप्त क्यों नहीं है
mix run के साथ एप्लिकेशन चलाने में प्रोडक्शन के लिए कुछ कमियाँ हैं:
- इसके लिए पूरा Mix बिल्ड टूल और आपके प्रोजेक्ट का स्रोत कोड आवश्यक होता है।
- यह डिफ़ॉल्ट रूप से विकास वातावरण का कॉन्फ़िगरेशन उपयोग करता है।
- शुरुआत धीमी हो सकती है, क्योंकि इसे निर्भरताओं को कंपाइल और लोड करना पड़ता है।
- पृष्ठभूमि प्रक्रियाओं के लिए इसमें उचित डेमोनाइज़ेशन सुविधाएँ नहीं होतीं।
`mix release` का परिचय
mix release एक OTP रिलीज़ बनाता है। इसे अपने Elixir एप्लिकेशन और उसकी निर्भरताओं के एक पूर्ण, स्व-निहित पैकेज के रूप में समझें।
इसमें Erlang VM, आपका कंपाइल किया हुआ कोड और आपके एप्लिकेशन को एक स्वतंत्र सेवा के रूप में शुरू, बंद और प्रबंधित करने के लिए आवश्यक सभी स्क्रिप्ट शामिल होती हैं।
रिलीज़ का उपयोग करने के लाभ
रिलीज़ का उपयोग करने से कई महत्वपूर्ण लाभ मिलते हैं:
- स्व-निहित: सर्वर पर Mix या Elixir इंस्टॉल करने की आवश्यकता नहीं होती।
- तेज़ शुरुआत: प्रोडक्शन के लिए पहले से कंपाइल और अनुकूलित।
- प्रोडक्शन के लिए तैयार: डेमोनाइज़ेशन और पर्यवेक्षण के लिए डिज़ाइन की गई।
- चलते समय कोड बदलना: बिना डाउनटाइम के चल रहे सिस्टम को अपग्रेड करने का समर्थन (उन्नत सुविधा)।
अपनी पहली रिलीज़ बनाना
रिलीज़ बनाने के लिए पहले सुनिश्चित करें कि आपके प्रोजेक्ट में एक सुपरवाइज़र है। अधिकांश Phoenix प्रोजेक्ट और mix new my_app --sup से बनाए गए प्रोजेक्ट में यह पहले से मौजूद होता है।
इसके बाद बस mix release कमांड चलाएँ। यह आपके प्रोजेक्ट और उसकी निर्भरताओं को प्रोडक्शन वातावरण के लिए कंपाइल करेगा।
mix new my_release_app --sup
cd my_release_app
mix deps.get
mix releaseरिलीज़ की संरचना को समझना
mix release चलाने के बाद आपको अपनी रिलीज़ _build/prod/rel/your_app_name/ में मिलेगी।
इसके अंदर आपको bin निर्देशिका दिखेगी, जिसमें आपके एप्लिकेशन को प्रबंधित करने वाली स्क्रिप्ट होगी; lib में सभी कंपाइल की गई निर्भरताएँ होंगी; और releases में संस्करण-विशिष्ट फ़ाइलें होंगी।
my_release_app/
├── _build/
│ └── prod/
│ └── rel/
│ └── my_release_app/
│ ├── bin/
│ │ └── my_release_app (start/stop script)
│ ├── lib/
│ ├── releases/
│ └── erts-...
├── config/
├── lib/
└── mix.exsअपना रिलीज़ किया हुआ एप्लिकेशन चलाना
रिलीज़ से अपना एप्लिकेशन शुरू करने के लिए bin निर्देशिका में बनी स्क्रिप्ट का उपयोग करें। आप इसे अग्रभूमि में या डेमोन के रूप में शुरू कर सकते हैं।
प्रोडक्शन वातावरण में आप आमतौर पर इसे पृष्ठभूमि में शुरू करेंगे।
# Start in foreground (for testing)
_build/prod/rel/my_release_app/bin/my_release_app start_iex
# Start as daemon (production)
_build/prod/rel/my_release_app/bin/my_release_app start
# Stop a running daemon
_build/prod/rel/my_release_app/bin/my_release_app stop`runtime.exs` के साथ रनटाइम कॉन्फ़िगरेशन
प्रोडक्शन परिनियोजन के लिए आपको अक्सर अपने वातावरण के आधार पर एप्लिकेशन को कॉन्फ़िगर करना पड़ता है (जैसे, डेटाबेस क्रेडेंशियल और API कुंजियाँ)।
mix release config/runtime.exs का उपयोग करता है, जिसे रिलीज़ बनने के बाद और एप्लिकेशन शुरू होने से पहले चलाया जाता है। पर्यावरण चर पढ़ने के लिए यह बिल्कुल उपयुक्त है।
# config/runtime.exs
import Config
config :my_release_app,
database_url: System.get_env("DATABASE_URL"),
api_key: System.get_env("API_KEY")अपग्रेड और डाउनग्रेड (उन्नत)
OTP रिलीज़ की सबसे शक्तिशाली सुविधाओं में से एक चलते समय कोड अपग्रेड करने की क्षमता है। इसका अर्थ है कि आप एप्लिकेशन को रोके बिना उसमें नया कोड अपडेट कर सकते हैं, जिससे बिना किसी डाउनटाइम के परिनियोजन संभव होता है।
हालाँकि यह एक उन्नत विषय है, `mix release` आपके एप्लिकेशन को इस तरह पैकेज करके इसकी आधारभूमि तैयार करता है कि संस्करणों का प्रबंधन और पैचिंग संभव हो सके।
रिलीज़ के लाभों की जाँच
Elixir एप्लिकेशन के परिनियोजन के लिए mix release का उपयोग करने के निम्नलिखित में से कौन-से प्रमुख लाभ हैं?
पुनरावलोकन: परिनियोजन के लिए तैयार!
आपने सीखा कि प्रोडक्शन के लिए Elixir एप्लिकेशन पैकेज करने का मानक तरीका mix release है। यह Mix टूलचेन से स्वतंत्र एक स्व-निहित, अनुकूलित बंडल बनाता है।
रिलीज़ तेज़ शुरुआत, मज़बूत डेमोनाइज़ेशन और चलते समय कोड अपग्रेड जैसी उन्नत सुविधाओं का समर्थन देती हैं। config/runtime.exs के साथ मिलकर वे एक शक्तिशाली और लचीला परिनियोजन समाधान प्रदान करती हैं।
एआई शिक्षक के साथ Elixir सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 12
- पाठ
- 48
अक्सर पूछे जाने वाले प्रश्न
क्या “Mix Release से रिलीज़ बनाना” पाठ निःशुल्क है?
हाँ—“Mix Release से रिलीज़ बनाना” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Elixir और Phoenix: स्केलेबल बैकएंड विकास पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Elixir और Phoenix: स्केलेबल बैकएंड विकास पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“Mix Release से रिलीज़ बनाना” में मैं क्या सीखूँगा?
`mix release` का उपयोग करके अपने Elixir एप्लिकेशन की स्व-निहित और परिनियोजन के लिए तैयार रिलीज़ बनाएँ। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Elixir और Phoenix: स्केलेबल बैकएंड विकास का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या Elixir और Phoenix: स्केलेबल बैकएंड विकास शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Elixir और Phoenix: स्केलेबल बैकएंड विकास शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 1वाँ पाठ है।
“Mix Release से रिलीज़ बनाना” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस Elixir और Phoenix: स्केलेबल बैकएंड विकास पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर Elixir और Phoenix: स्केलेबल बैकएंड विकास पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- Mix Release से रिलीज़ बनाना
- Docker से कंटेनरीकरण
- क्लाउड परिनियोजन रणनीतियाँ
- शून्य-डाउनटाइम परिनियोजन और हॉट अपग्रेड