我有一个问题,快把我逼疯了。我正在尝试创建一个Ubuntu15.04Upstart作业,它将启动运行uWSGI应用程序的Django服务器(Django version2.0.7-debian)。
我已经按如下方式配置了该服务,并尝试通过发出命令$ sudo service uwsgi start来启动作业。日志文件中没有输出,没有创建套接字文件,也没有错误。
# file: /etc/init/uwsgi.conf
description "uWSGI server"
start on runlevel [2345]
stop on runlevel [!2345]
exec /usr/bin/uwsgi --ini /srv/configs/uwsgi.iniservice uwsgi status说
● uwsgi.service - LSB: Start/stop uWSGI server instance(s)
Loaded: loaded (/etc/init.d/uwsgi)
Active: active (exited) since Tue 2015-05-05 09:40:08 EEST; 1s ago
Docs: man:systemd-sysv-generator(8)
Process: 21405 ExecStop=/etc/init.d/uwsgi stop (code=exited, status=0/SUCCESS)
Process: 21460 ExecStart=/etc/init.d/uwsgi start (code=exited, status=0/SUCCESS)
May 05 09:40:08 web-2 systemd[1]: Starting LSB: Start/stop uWSGI server instance(s)...
May 05 09:40:08 web-2 uwsgi[21460]: * Starting app server(s) uwsgi
May 05 09:40:08 web-2 uwsgi[21460]: ...done.
May 05 09:40:08 web-2 systemd[1]: Started LSB: Start/stop uWSGI server instance(s).uWSGI应用程序配置为
[uwsgi]
uid = www-data
gid = www-data
socket = /srv/sockets/uwsgi.sock
chmod-socket = 666
master = true
processes = 4
enable-threads = true
plugins = python
chdir = /srv/sites/current
module = wsgi:application
virtualenv = /srv/environments/current
logto = /srv/logs/uwsgi.log
logfile-chown = true
touch-reload = /srv/sites/current/wsgi.py如果服务直接启动,则服务启动正常,并且一切正常,例如,通过发出命令:sudo -u www-data /usr/bin/uwsgi --ini /srv/configs/uwsgi.ini
对于套接字目录和日志文件目录,我设置了最宽松的权限。
所以,我不知所措。下一步要做什么?
发布于 2015-05-05 19:34:09
感谢nmgeek的评论,我开始寻找其他配置了uWSGI的地方。
在尝试将所有与我们自己的应用程序相关的内容移动到/srv下时,我删除了/run/uwsgi目录,uWSGI正试图在其中创建PID文件。
你可以在/usr/share/uwsgi/conf/default.ini上找到参考资料。
糟糕的是,在这种情况下,uWSGI不会产生任何错误,这让我沮丧了一天。
发布于 2016-05-09 04:53:55
我只想添加一些额外的细节。在我的例子中,我没有删除任何东西,但是,由于某些原因,systemd无法创建/run/uwsgi目录。所以,我做了echo "/run/uwsgi 0755 www-data www-data -" > /etc/tmpfiles.d/uwsgi.conf。在那之后,我重启了我的虚拟机(我没有找到一种不重启就能应用这些更改的方法),uwsgi开始工作了!
是的,在这种情况下,uWSGI没有产生任何错误,这太糟糕了。
https://stackoverflow.com/questions/30046168
复制相似问题