网上的关于uwsgi的自启动的方法还是挺多的,具体搜索一下就知道了,这里简单的写一下官方推荐的方法,通过systemd启动服务。如果用这个方法需要首先确定systemd的版本大于211。
通过下面的命令获取systemd版本信息:
root@mars:/etc/systemd/system# systemctl --version
systemd 229
+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ -LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN
按照官方的文档编写service文件,放入/etc/systemd/system目录下然后执行
systemctl start emperor.uwsgi.service即可启动服务。service文件如下:
[Unit] Description=uWSGI Emperor After=syslog.target
[Service]
ExecStart=/usr/local/bin/uwsgi --ini /var/www/html/project/uwsgi.iniRequires systemd version 211 or newer
RuntimeDirectory=uwsgi
Restart=always
KillSignal=SIGQUIT
Type=notify
StandardError=syslog
NotifyAccess=all
[Install]
WantedBy=multi-user.target
这个脚本需要注意两个地方,一个是uwsgi的可执行文件路径,另外一个是uwsgi.ini配置文件路径。可执行文件路径可以通过whois uwsgi获取。
不过需要注意的是,如果此时重启系统服务并不会自动启动:
root@mars:# systemctl status emperor.uwsgi.service
● emperor.uwsgi.service - uWSGI Emperor
Loaded: loaded (/etc/systemd/system/emperor.uwsgi.service; disabled; vendor preset: enabled)
Active: inactive (dead)
需要通过enable 来设置服务自动启动
root@mars:# systemctl enable emperor.uwsgi.service
Created symlink from /etc/systemd/system/multi-user.target.wants/emperor.uwsgi.service to /etc/systemd/system/emperor.uwsgi.service.
此时查看服务状态就是enabled了
root@mars:~# systemctl status emperor.uwsgi.service
● emperor.uwsgi.service - uWSGI Emperor
Loaded: loaded (/etc/systemd/system/emperor.uwsgi.service; enabled; vendor preset: enabled)
Active: inactive (dead)
☆文章版权声明☆
* 网站名称:obaby@mars
* 网址:https://h4ck.org.cn/
* 本文标题: 《ubuntu 16.04 uwsgi自启动》
* 本文链接:https://h4ck.org.cn/2018/12/ubuntu-16-04-uwsgi%e8%87%aa%e5%90%af%e5%8a%a8/
* 转载文章请标明文章来源,原文标题以及原文链接。请遵从 《署名-非商业性使用-相同方式共享 2.5 中国大陆 (CC BY-NC-SA 2.5 CN) 》许可协议。
分享文章:
相关文章:
- systemd 运行celery
- ubuntu uwsgi No module named ‘django’
- Ubuntu 9.04
- Ubuntu Fcitx输入法以及Flash乱码
- Ubuntu 10.04安装IDA PRO
- Ubuntu 64bit 安装QQ
- 在 Ubuntu 上换用 OSS4 声音系统
- Ubuntu 14.04 Pycharm 桌面快捷方式
- ubuntu 18.04 pip3 install mysqlclient
- Ubuntu 10.04下IDA5.2的Call Graph View