python - 使用 gunicorn 时未加载虚拟环境路径

标签 python virtualenv virtualenvwrapper

我有一个脚本可以加载安装在 virtualenv

中的 pip
from google.cloud import pubsub

当我像这样运行脚本时

(my_virtual_environment): python script.py

它有效。但是当我通过 gunicorn

运行它时
gunicorn -c gunicorn_config.py script.py

我明白了

from google.cloud import pubsub
ImportError: No module named cloud

当我在两种情况下都打印 sys.path 时,我得到的是 sys.path 在一种情况下包含 virtualenv 路径

[......., /Users/partuck/.virtualenvs/my_virtual_environment/lib/python2.7/plat-darwin',......]

在另一种情况下(通过 gunicorn 运行),我没有看到它。 当运行 pip freeze 时,gunicorn 存在。

最佳答案

所以,事实证明 gunicorn 默认到它之前加载的位置。

我的解决办法是在目录下cd然后运行gunicorn命令

cd my_directory
<loads the virtualenv> using auto env # workon my_virtualenv
gunicorn -c gunicorn_config.py script.py

关于python - 使用 gunicorn 时未加载虚拟环境路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40830195/

相关文章:

python - 玛雅Python : Getting a Float Slider Group to align in the same row as Checkboxes

linux - mktemp : failed to create file via template ‘/tmp/virtualenvwrapper-initialize-hook-XXXXXXXXXX’ : Read-only file system

Python正则表达式通过AND条件查找匹配词

python - 如何通过systemd使用用户的pipenv? Python是通过SCL安装的

Python/jython共存于virtualenv

python - Macos Catalina 破坏了所有 Python Venvs

python - 执行在不同虚拟环境/venv 下构建的 python 脚本?

python - 从python脚本在virtualenv中打开python脚本

python - 根据值在数据框的所有行中填充值

Python - 使用 virtualenv 手动安装包