Django 以无人身份启动Gunicorn时出错

Django 以无人身份启动Gunicorn时出错,django,virtualenv,gunicorn,Django,Virtualenv,Gunicorn,所以当我运行命令时 gunicorn test.wsgi:application --bind 127.0.0.1:8000 --workers=3 --user=nobody 我得到一个错误: OSError: [Errno 1] Operation not permitted: '/tmp/wgunicorn-QGaR6q' 这似乎不允许我以另一个用户的身份启动该进程,因此当我使用sudo尝试相同的命令时,我会遇到一系列错误: ImportError: No module named d

所以当我运行命令时

gunicorn test.wsgi:application --bind 127.0.0.1:8000 --workers=3 --user=nobody
我得到一个错误:

OSError: [Errno 1] Operation not permitted: '/tmp/wgunicorn-QGaR6q'
这似乎不允许我以另一个用户的身份启动该进程,因此当我使用sudo尝试相同的命令时,我会遇到一系列错误:

ImportError: No module named django.core.wsgi

raise HaltServer(原因、self.WORKER\u引导错误)
gunicorn.errors.HaltServer:

我是在一个虚拟环境中做这些事情的,所以我想这与我在sudo时没有识别它有关,但是没有sudo,我就没有权限以另一个用户的身份启动服务器。

如果编辑主管的应用程序配置或在没有--user标志的情况下运行命令,我也会遇到同样的问题。我也在处理数字海洋液滴,但无法让主管处理用户标志。

以解决导入错误 (ImportError:没有名为django.core.wsgi的模块)

确保您已经在virtualenv中安装了django

要在virtualenv中安装django,请输入以下命令:
cd
源代码箱/激活

pip install django

检查系统上
/tmp
目录的权限…权限允许每个人进行写/执行/读访问。我更深入地研究了这个问题,很多人都遇到了和我一样的问题,因为我遵循这个指南创建了一个关于数字海洋水滴的django项目。你不需要--user标志将用户设置为nobody吗?我正在使用supervisor运行我编写的gunicorn脚本。我已将gunicorn脚本中的用户标志设置为我服务器上的当前用户,并从supervisor配置文件中删除了该用户标志,因为我认为它正在创建冲突。对不起,我不清楚这件事。
raise HaltServer(reason, self.WORKER_BOOT_ERROR)
gunicorn.errors.HaltServer: <HaltServer 'Worker failed to boot.' 3>