2016-12-29 44 views
0

我已經安裝了gunicorn和我的django項目kb當我cd到kb並運行gunicorn --bind 0.0.0.0:8000 kb.wsgi:application它運行正常。設置gunicorn與Django一起運行

我有我的/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 service gunicorn start

我得到Failed to start gunicorn.service: Unit gunicorn.service not found.

UPDATE

的高管行:

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

來自gunicorn安裝在virtualenv中的一個例子。我已經編輯了exec virtualenv\bin\gunicornexec gunicorn

+0

也許這一個幫助:http://askubuntu.com/questions/749135/unit-gunicorn-service-failed-to-load-no-這樣的文件或目錄在ubuntu-15-1 – dahrens

+0

是的,這與我編輯的exec線有關,是針對virtualenv中的gunicorn。雖然這看起來可以起作用,但我更願意弄清楚我是否可以使用全球安裝的gunicorn工作。 –

+0

@SamuelMuiruri - 我不確定我是否理解virtualenv對該問題的相關性。鏈接的帖子表明,問題在於你應該使用'systemd'單元文件,例如http://docs.gunicorn.org/en/stable/deploy.html#systemd而不是'upstart'初始化文件。你試圖運行的主機操作系統是什麼? – 2016-12-29 08:28:56

回答

0

而不是使用gunicorn.conf更好地使用下面的文件....

須藤納米/etc/systemd/system/gunicorn.service

添加下面的conf設置在這個文件....

[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克+ X /家/ DJ/

CHMOD克+ R /家庭/ DJ/

須藤chgrp命令WWW的數據/家/ DJ/

注:請確保該gunicorn應該是的virtualenv中..

FYI:PIP安裝gunicorn下的virtualenv

希望這有助於你.. 它的工作對我來說..