告诉 Flask 使用哪个虚拟环境

Tell Flask Which Virtual Environment To Use

我正在尝试在 Amazon EC2 实例上设置 Flask。 我想从已安装的虚拟环境中使用 python 3.5 运行 flask。

然而,当我 运行 flask 使用 ubuntu python 2.7 安装时。

如何告诉flask使用虚拟环境python安装?

谢谢

在 app.py 第一行添加:

#!/path/to/virtualenv/bin/python3.5

然后 chmod +x app.py

那么您可以 运行 作为:

./app.py

how to make python script self-executable

如果您在开发过程中从 CLI 运行使用它,您的服务器上应该已经有 python 3.5。如果不是,则 运行 sudo apt-get install python3。 运行 应用:

python3 app.py

但是,由于您询问的是 virtualenv——这是非常好的做法——您可以创建一个指定 python3 路径的新环境,如 here.如果您不知道路径,运行 which python3。对于我的电脑,运行ning Ubuntu 16.04:

virtualenv -p /usr/bin/python3 <path/to/new/virtualenv/>

然后:

source <env_name>/bin/activate

现在,即使对于开发人员来说,这也不是一个很好的设置,对于生产来说绝对是糟糕的。我建议使用 uWSGINGINX 来为您的应用提供服务。您可以在 uWSGI 配置中指定 virtualenv 路径——我建议使用 .ini 文件。 Here是我用来入门的非常好的Digital Ocean教程。它不会教你一切,但它应该让你走上正确的道路。网上有很多关于此配置的资源,因此您应该能够解决 运行 遇到的任何问题。