Python 将gunicorn设置为与Django一起运行
当我将cd放入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
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
初始化文件。您试图在什么主机操作系统上运行此操作?