uWSGI使用systemd自动启动

时间:2015-10-28 03:16:37

标签: nginx uwsgi ubuntu-15.04

所以我试图让uWSGI和nginx一起工作,并希望设置以下命令行来自动执行并启动我的uWSGI后台服务:

uwsgi --master --processes 4 --die-on-term --uid uwsgi --gid nginx --socket /tmp/uwsgi.sock --chmod-socket --stats :1717 --no-site --vhost --logto /var/log/uwsgi.log

当使用systemd时,我认为我唯一需要做的就是使用ExecStart=并启动该命令。但是由于systemd需要绝对路径,我在默认的uWSGI启动脚本中查看并看到/usr/bin/uwsgiusr/sbin/uwsgi将是默认的起始路径。

所以对我来说最终的exec命令看起来像这样:

ExecStart=/usr/bin/uwsgi --master --processes 4 --die-on-term --uid uwsgi --gid nginx --socket /tmp/uwsgi.sock --chmod-socket --stats :1717 --no-site --vhost --logto /var/log/uwsgi.log

问题:运行此问题时,无法找到运行virtualenv中所有内容的选项--no-site。 在命令行中使用uwsgi启动时,这不是问题。 但即使直接从命令行启动/usr/bin/uwsgi,我也会收到此错误。

所以对我来说,uwsgi命令看起来不仅仅是直接运行/usr/bin/uwsgi。但是我不确定我需要做些什么才能让它发挥作用。

我真的很感激我能得到的任何帮助。

2 个答案:

答案 0 :(得分:2)

所以我使用/usr/local/uwsgi来查看每个包含uwsgi实例的文件夹,发现默认的uwsgi应用程序似乎在UIWebView

答案 1 :(得分:0)

您是否尝试过将uwsgi配置放在单独的文件中?

ExecStart=/usr/bin/uwsgi --ini /path/to/your/app/uwsgi.ini

您可以阅读有关uwsgi ini configs here

的更多信息