Python 将gunicorn设置为与Django一起运行

Python 将gunicorn设置为与Django一起运行,python,django,gunicorn,Python,Django,Gunicorn,当我将cd放入kb并运行gunicorn--bind 0.0.0.0:8000 kb时,我已经安装了gunicorn和我的django项目kb。wsgi:application运行正常 我已经在/etc/init/gunicorn.conf description "Gunicorn application server handling myproject" start on runlevel [2345] stop on runlevel [!2345] respawn setuid

当我将cd放入
kb
并运行
gunicorn--bind 0.0.0.0:8000 kb时,我已经安装了gunicorn和我的django项目
kb
。wsgi:application
运行正常

我已经在
/etc/init/gunicorn.conf

description "Gunicorn application server handling myproject"

start on runlevel [2345]
stop on runlevel [!2345]


respawn
setuid user
setgid www-data
chdir /home/ubuntu/kb

exec gunicorn --workers 3 --bind unix:/home/ubuntu/kb/kb.sock kb.wsgi:application
当我运行
sudo服务gunicorn start

我获取
启动gunicorn.service失败:找不到单元gunicorn.service。

更新

exec行:

exec gunicorn --workers 3 --bind unix:/home/ubuntu/kb/kb.sock kb.wsgi:application

来自gunicorn安装在virtualenv中的示例。我已将
exec virtualenv\bin\gunicorn
编辑为
exec gunicorn

而不是使用gunicorn.conf,最好使用以下文件

sudo nano/etc/systemd/system/gunicorn.service

在此文件中添加以下配置设置

[Unit]
Description=gunicorn daemon
After=network.target

[Service]
User=dj
Group=www-data
WorkingDirectory=/home/dj/myproject
ExecStart=/home/dj/myproject/myprojectenv/bin/gunicorn --access-logfile - --workers 3 --bind unix:/home/dj/myproject/myproject.sock myproject.wsgi:app$

[Install]
WantedBy=multi-user.target
将权限更改为目录

chmod g+x/home/dj/

chmod g+r/home/dj/

sudo chgrp www-data/home/dj/

注意:请确保gunicorn应位于virtualenv内

供参考:pip在virtualenv下安装gunicorn

希望这对你有帮助。。
它对我有用。

也许这一条有帮助:是的,它与我之前编辑的exec行有关,它是为gunicorn设计的虚拟版。虽然这看起来是可行的,但我更愿意弄清楚是否可以在全球范围内安装gunicorn。@SamuelMuiruri-我不确定我是否理解virtualenv与这个问题的相关性。链接的帖子建议,问题是您应该使用这样的
systemd
单元文件,而不是
upstart
初始化文件。您试图在什么主机操作系统上运行此操作?