【发布时间】:2016-11-26 18:34:38
【问题描述】:
我最近使用 DigitalOcean 单击 droplet setup 在线部署了一个应用程序,该程序使用 nginx 和 gunicorn 在 Ubuntu 上设置 Django。它带有一个默认的 django 项目,我已经设法将其更改为我自己的。但是,默认项目不使用 virtualenv,它使用系统范围的安装。因此,只有在系统上安装了所有依赖项时,该应用程序才有效。我知道这一点,因为如果我卸载 django,它会给我一个内部服务器错误。
我想在我的 virtualenv 中使用 python 作为解释器。并参考该环境中的站点包。我试过摆弄 PYTHONPATH 并将 sys.path.append('/home/env/projectname') 添加到 wsgi 文件,但这不起作用。
我怎样才能做到这一点?
/etc/init/gunicorn.conf:
setuid django
setgid django
chdir /home/env/projectname
exec gunicorn \
--name=prj \
--pythonpath=prj \
--bind=127.0.0.1:9000 \
--config /etc/gunicorn.d/gunicorn.py \
prj.wsgi:application
【问题讨论】:
标签: python django virtualenv gunicorn pythonpath