2016-08-31 6 views
9

मैंने पायथन में ट्वीपी का उपयोग करके एक ट्विटर बॉट बनाया और Heroku का उपयोग करके इसे तैनात करने का प्रयास किया। बॉट कुछ अंतराल के बाद सिर्फ ट्वीट करता है। के बाद यह तैनाती, पायथन कार्यक्रम बस नहीं चलता है और Heroku लॉग निम्न त्रुटि दिखाता है:हेरोकू - कोई वेब प्रक्रिया चल रही नहीं है

at=error code=H14 desc="No web processes running" method=GET path="/favicon.ico" host=fathomless-island-25537.herokuapp.com request_id=0aa76d12-31e6-4940-85ec-a8476af4f82f fwd="182.64.210.145" dyno= connect= service= status=503 bytes= 

कुछ इसी तरह की समस्याओं जहां एक Django अनुप्रयोग तैनात किया गया है के माध्यम से देखने के बाद, मैंने कोशिश की:

heroku ps:scale web=1 

और मिल गया:

Scaling dynos... ! 
! Couldn't find that formation. 

यह मतलब यह है कि कार्यक्रम के लिए एक वेब प्रक्रिया स्थापित करने में विफल या कुछ और dynos से संबंधित कुछ है? या अगर मुझे अपने कार्यक्रम में dynos से संबंधित कुछ कोड शामिल करना है? मुझे नहीं पता कि इस पूरी प्रक्रिया के किस हिस्से में एक समस्या है। क्षमा करें अगर यह बहुत बुनियादी है।

+0

इस्तेमाल किया है कि आप अपने Procfile पोस्ट कर सकते हैं के साथ अपने dyno पैमाने पर कर सकते हैं? –

+1

@ MichałMłoźniak; Procfile कहते हैं 'कार्यकर्ता: python bot.py' –

+0

तो आपको शायद' heroku ps: scale worker = 1' –

उत्तर

3

सवाल इससे पहले कि आप dynos पैमाने पर कर सकते हैं, तो आप एक Procfile है, जहां आप को परिभाषित क्या होने चाहिए जब प्रक्रिया शुरू कर दी है की आवश्यकता है एक सा पुराने, लेकिन वैसे भी है ...

। आपके मामले में प्रक्रिया web कहा जाना चाहिए। हम एक पल में फाइल की सामग्री आ जाएंगे।

लेकिन पहले: मेरे लिए यह हैकोकू पर पाइथन ऐप्स चलाने के लिए बंदूक का उपयोग करना सबसे अच्छा लगता है, इसलिए सबसे पहले आपको गनिकोर्न स्थापित करना चाहिए, pip freeze > requirements.txt चलाएं और उसे हेरोकू पर दबाएं (ठीक है, जब तक आपके पास Procfile नहीं है तब तक प्रतीक्षा करें)। अधिक देखने के लिए: python with gunicorn on heroku

Procfile केवल एक पंक्ति web: gunicorn <filename>:<main method name> की आवश्यकता है। आपके मामले में यह होगा (मान लें कि आपकी मुख्य विधि को 'ऐप' कहा जाता है) web: gunicorn bot:app

अब Heroku करने के लिए सभी कि धक्का, तो आप आदेश आप heroku ps:scale web=1

संबंधित मुद्दे