Я пытаюсь загрузить приложение Flask на сервере Gunicorn. Помещая документы двух инструментов вместе, а также поиск вокруг SO, это то, что у меня есть до сих пор... но это не совсем работает.
app.py
from flask import Flask, render_template
from flask.ext.sqlalchemy import SQLAlchemy
from werkzeug.contrib.fixers import ProxyFix
app = Flask(__name__)
app.wsgi_app = ProxyFix(app.wsgi_app)
db = SQLAlchemy(app)
@app.route('/')
def index():
return render_template('index.html')
что я бежал:
В том же каталоге, что и app.py,
gunicorn app:app
Даже начиная этот маленький, я что-то пропустил. Сообщение об ошибке не очень полезно:
2013-09-12 20:13:07 [11461] [INFO] Начало стрельбы из лука 0.14.5
2013-09-12 20:13:07 [11461] [INFO] Слушание:http://127.0.0.1:8000
(11461)
2013-09-12 20:13:07 [11461] [INFO] Использование рабочего: синхронизация
2013-09-12 20:13:07 [11528] [INFO] Загружающий рабочий с pid: 11528
2013-09-12 20:13:07 [11528] [INFO] Выход рабочего (pid: 11528)
2013-09-12 20:13:08 [11461] [INFO] Выключение: Мастер
2013-09-12 20:13:08 [11461] [INFO] Причина: Работник не смог загрузиться.
Кстати, я запускаю это в системе Debian Linux. Большое спасибо за вашу помощь!
Обновить
После включения отладки я получил несколько более поучительных сообщений об ошибках. Это очень частая проблема: ImportError: No module named flask
. Обычно я получаю такую ошибку, когда я не использую свой virtualenv, но я есть. И при ближайшем рассмотрении Gunicorn, похоже, использует другую версию Python, чем использует мой virtualenv, то есть Python3. Итак... мой особый питон, похоже, не привыкает. Как исправить это и сообщить Gunicorn использовать правильный Python?