हाँ, मुझे लगता है कि आप उत्पादन में यह तैनात करने के लिए virtualenv का उपयोग करना चाहिए। यह चीजों को आपके लिए बहुत आसान और साफ बनाता है, खासकर यदि आप कई सेवाओं को तैनात करने की योजना बनाते हैं, उदा। django आधारित वेबसाइटों या अन्य अजगर परियोजनाओं। आप नहीं चाहते हैं कि उनमें से प्रत्येक अपने पैकेज के साथ वैश्विक पायथन पर्यावरण को प्रदूषित करे।
मुझे लगता है कि वर्चुअलएन्व आपकी सभी निर्भरताओं को स्पष्ट रूप से प्रबंधित करने में आपकी सहायता करेगा।
अपने उत्पादन env अद्यतन करने के लिए तुम सब करने की जरूरत है के लिए है:
pip -r name_of_your_requirements_file.txt
मैं उत्पादन में virtualenvs उपयोग करें, और आप uWSGI का उपयोग एक वेब सर्वर के रूप में चेरोकी के साथ, आवेदन सेवा करने के लिए कर सकते हैं।
उत्पादन में अपने वर्चुअलनेव का उपयोग करने के लिए, आपको अपने पाइथोनपैथ में अपना रास्ता जोड़ना होगा।
उदाहरण के लिए अपने env मार्ग होता है, तो "/ घर/www/my_project/env /", जोड़ने के लिए पथ होगा:
/home/www/env/lib/python2.7/site-packages/
आप कई अलग अलग तरीकों से इस सेट कर सकते हैं, लेकिन अगर आप manage.py के माध्यम से अपने FCGI या uWSGI इंटरफ़ेस जेनरेट कर रहे हैं, बस अपने manage.py के सबसे ऊपर (बाकी से पहले) में निम्नलिखित जोड़ें:
import os
my_virtualenv_path = "/home/www/my_project/env/lib/python2.7/site-packages/"
# Add it to your PYTHONPATH
os.path.append(my_virtualenv_path)
आप अपने स्थापना के लिए इस अनुकूलित कर सकते हैं, बस में यदि आप खोल में निम्नलिखित भी कर सकते हैं:
export PYTHONPATH:$PYTHONPATH:/home/www/my_project/env/lib/python2.7/site-packages/
आपको उस निर्देशिका को भी जोड़ना होगा जिसमें आपकी सेटिंग्स.py फ़ाइल PYTHONPATH में है, इसलिए Django इसे खोजने में सक्षम होगा। ऐसा करने के लिए बस इसी तरह से आगे बढ़ें।
ध्यान दें कि आधिकारिक Django दस्तावेज उत्पादन में वर्चुअलएन्व का उपयोग करने का उल्लेख करता है: https://docs.djangoproject.com/en/dev/howto/deployment/wsgi/modwsgi/#using-a-virtualenv –
मैंने ट्यूटोरियल को @ बार्टक [एक nginx और uWSGI परिनियोजन की सुंदर सरलता] (http://bartek.im/blog/2012/07/08/simplicity-nginx-uwsgi-deployment.html) –
हेरोोकू इसकी अनुशंसा करता है: https: // devcenter। heroku.com/articles/deploying-python –