2014-02-23 68 views
3

在找到答案後,我似乎無法找到一個可靠的答案。目前,我有我的目錄設置是這樣的:如何在Heroku中爲Python創建一個Procfile?

flaskapp 
    -app 
     -intro_to_flask 
       +__init__.py 
       +config.py 
       +routes.py 
       +forms.py 
     -runserver.py 
     -Readme.md 
    -bin 
    -include 
    -lib 
    -view 
Procfile 
requirements.txt 

所以我不知道是否Procfile正確設置了......我把它設置了這種方式:

web: gunicorn --pythonpath app runserver 

然而,當我跑工頭開始...... Heroku的進入一個循環,不斷重新啓動的連接,我嘗試手動設置在虛擬環境中的出口PORT = 5001的端口,但我仍然得到同樣的錯誤:

Running on http://127.0.0.1:5000/ 
12:21:20 web.1 | * Restarting with reloader 
12:21:20 web.1 | 2014-02-22 12:21:20 [34532] [INFO] Starting gunicorn 18.0 
12:21:20 web.1 | 2014-02-22 12:21:20 [34532] [ERROR] Connection in use: ('0.0.0.0', 5001) 

此外,我已經殺死了所有在使用過程中的gunicorn進程,並嘗試運行工頭再次啓動...任何想法可能會發生什麼?

這裏是我的runserver.py

from intro_to_flask import app 

app.run(debug=True) 
+0

你可以顯示'runserver.py'的內容嗎? – Miguel

+0

@米格爾當然...我的內容如下: – ShaunK

回答

2

當你運行你的gunicorn你不使用啓動開發服務器相同的啓動腳本的應用程序。所有gunicorn需要知道的是從何處導入應用程序。你的情況我想你想你的Procfile什麼是這樣的:

web: gunicorn --pythonpath app intro_to_flask:app 

不知道這會是工作,或者如果你需要做一些小改動。這個想法是,你需要給gunicorn定義應用程序的包或模塊,然後是冒號,然後是應用程序實例符號。

我希望這會有所幫助。