【发布时间】:2015-05-05 06:58:38
【问题描述】:
我遇到了一个让我发疯的问题。我正在尝试创建一个 Ubuntu 15.04 Upstart 作业,它将启动运行 Django 应用程序的 uWSGI 服务器(uWSGI 版本 2.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.ini
service 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
对于套接字目录和日志文件目录,我设置了最宽松的权限。
所以,我很茫然。下一步该做什么?
【问题讨论】:
-
根据我在 Ubuntu 15.04 中看到的有关 systemd 的情况,默认情况下它可能不会记录到任何 /var/log 文件。它可能将它的“单元”配置文件存储在 /etc/init 之外的某个地方:我在文档中看到 /lib/systemd/system 并且您的状态输出显示 /etc/init.d。所以也许它使用了不同的服务配置文件,将套接字文件放在你不看的位置。我这样说是因为您的状态输出表明 systemd thinks uwsgi 已经在运行。您可以通过
ps auxww|wsgi查找流程。 -
ps aux | grep wsgi仅显示 grep 行,因此进程未运行。此外,我尝试使用这些说明在 /lib/systemd/system 中创建一个 uwsgi.service 文件,uwsgi-docs.readthedocs.org/en/latest/Systemd.html 但sudo systemctl status uwsgi.service报告的内容与service uwsgi status相同。 -
很高兴我提供了一些的帮助。您应该发布自己的问题答案吗?
-
看到您的评论后,我在 15 分钟内解决了问题。我想说你的帮助很重要。
标签: django ubuntu uwsgi upstart