为什么Gunicorn只能在virtualenv之外安装烧瓶时工作?

时间:2016-02-21 02:58:43

标签: flask gunicorn

我正在ubuntu 14.04 VPS上部署基于Flask的Web应用程序。我基本上遵循了我在Real Python here中发现的指令。以前当我启动gunicorn时,我收到消息:“ImportError:没有名为flask的模块”;这是尽管确保在virtualenv中安装了烧瓶并将其移除并重新安装它几次以及停用和重新激活virtualenv以及移除然后重新安装virtualenv。

在我的智慧结束时,我以为我会安装烧瓶,而virtualenv是deactviated和viola! gunicorn没有问题。然后我想我会在virtualenv之外启动gunicorn,我发现即使virtualenv关闭它也能正常工作。

有谁知道为什么会这样?

我正在运行的gunicorn命令是:

gunicorn app:app -b localhost:8000

我在项目文件夹中运行此命令,该文件夹包含文件app.py,其中包含以下代码:

from flask import Flask, jsonify
app = Flask(__name__)

@app.route('/')
def index():
   return 'Flask is running!'


@app.route('/data')
def names():
   data = {"names": ["John", "Jacob", "Julie", "Jennifer"]}
   return jsonify(data)



if __name__ == '__main__':
   app.run() code here

1 个答案:

答案 0 :(得分:1)

确保您正在运行的gunicorn是您的virtualenv中安装的那个。尝试使用哪个gunicorn,我怀疑它会指向你使用全局python安装而不是virtualenv中安装的gunicorn。