Ubuntu进程控制系统Supervisor
在部署网站或者在ssh到服务器上去进行一些长时间操作的任务时候,通常不喜欢长时间开启终端在其中等待,尤其是Windows下putty这类软件,长时间不操作就会结束,尴尬的是,我们跑的进程也会直接终端,为了解决这个问题,我们需要把进程扔到后台,让他自己运行
Supervisor的进程控制系统
它是一个C/S系统(注意: 其提供WEB接口给用户查询和控制), 它允许用户去监控和控制在类UNIX系统的进程. 它的目标与launchd, daemontools和runit有些相似, 但是与它们不一样的是, 它不是作为init(进程号pid是1)运行. 它是被用来控制进程, 并且它在启动的时候和一般程序并无二致 supervisor是一个制作守护进程的工具,用户可以在UNIX系统中监控、管理进程。常用于管理与某个用户或项目相关的进程。去帮我们维护各种服务器的进程,即使有软件崩了也能帮我们自动重启
Supervisor
首先先把官网丢上来http://supervisord.org/
安装
两种方式去安装
- 直接使用apt包管理安装
1 | sudo apt-get install supervisor |
- 通过pip安装
1 | sudo pip install supervisor |
安装成功后,supervisor就会默认启动
使用说明
有不同的使用方式,个人比较倾向把每个进程的文件单独拆分放在用户目录下,以conf为扩展名 这里以我自己的一个项目的进程作为例子
1 | mkdir /home/priv/supervisor/conf.d |
giteaserver.conf文件内容
1 |
让supervisor重新加载配置文件,然后启动giteaserver进程
1 | supervisorctl reload |
结束指定进程
1 | supervisorctl giteaserver stop |