我試圖在Heroku上設置一個測試Django項目。繼建議here和Heroku Getting Started我試圖使用gunicorn
而不是Django dev服務器。在Heroku上爲Django配置gunicorn
這是我在Procfile第一次嘗試:
web: gunicorn_django --workers=4 --bind=0.0.0.0:$PORT my_project/settings.py
worker: python my_project/manage.py celeryd -E -B --loglevel=INFO
這給了我這個錯誤:
ImportError: Could not import settings 'settings.py' (Is it on sys.path?): No module named py
我決定採取不同的軌道,並遵循建議here。現在我Procfile是這樣的:
(我也更新了我的要求的文件,包括GEVENT。)它給了我同樣的錯誤:
ImportError: Could not import settings
最後,我只是將它設置爲settings
:
web: gunicorn_django -b 0.0.0.0:\$PORT -w 9 -k gevent --max-requests 250 --preload settings
但現在我得到這個錯誤:
Error: django project not found
我的Django項目設置的方式是settings.py
文件位於repo的父目錄中 - 我沒有在另一個目錄下的Django項目。它與virtualenv和git文件處於同一級別。這會是一個問題嗎?我確信我正在做一些簡單的錯誤 - 任何幫助都將非常感激。
如果我遵循的Heroku here指令,改變Procfile這樣:
web: gunicorn hellodjango.wsgi -b 0.0.0.0:$PORT
什麼也沒有發生 - 在日誌中沒有錯誤,但沒有proceses運行和應用程序剛剛出現在死亡水。
您是否看到過專門針對Django的Heroku Quick Start文章?它包括對gunicorn的詳細說明。 https://devcenter.heroku.com/articles/django –
是的,我有,我會添加細節。簡短的回答 - 當我遵循這些方向時什麼都不會發生。該應用程序從未開始。 – tchaymore
我有相同的問題,基本上經歷了所有這些步驟才找到這個。 – Kin