CentOS安装Supervisord
supervisord已更新至4.2.4版本,但是在yum中只能安装3.4.0版本。通过官网更新日志中并没有发现4.x版本较大的差异变化,所以还是使用3.4版本。安装较为简单。
一、安装Supervisor
yum -y install supervisor
二、配置Supervisor
# 打开配置文件
vim /etc/supervisord.conf
# 取消注意以下行,开启web管理界面
# 注意修改端口
[inet_http_server] ; inet (TCP) server disabled by default
port=127.0.0.1:8901 ; (ip_address:port specifier, *:port for all iface)
username=mhalo ; (default is no username (open server))
password=urpwd ; (default is no password (open server))
注意:如果是在本地配置,为了方便访问,可以port改为0.0.0.0:56613
如果是在服务器中,不建议直接将端口进行暴漏,配置域名后使用nginx代理不失为更好的选择。
三、创建进程托管(示例)
# baget.keeplive.ini
[program:baget.keeplive]
command=dotnet Baget.dll
directory=/srv/website/dotnet/Baget
environment=ASPNETCORE__ENVIRONMENT=Production
user=root
stopsignal=INT
autostart=true
autorestart=true
startsecs=3
stderr_logfile=/var/log/baget.keeplive.err.log
stdout_logfile=/var/log/baget.keeplive.out.log
四、启动supervisord
systemctl start supervisord.service
systemctl enable supervisord.service
systemctl restart supervisord.service
五、验证supervisord状态
supervisorctl status
supervisord命令详见: Supervisord常用操作.md
六、开放访问端口
firewall-cmd --permanent --zone=public --add-port=56613/tcp
firewall-cmd --reload
firewall-cmd --permanent --zone=public --list-ports
七、supervisord常用操作命令
#启动进程
supervisorctl start projectname
#结束进程
supervisorctl stop projectname
#重启进程
supervisorctl restart projectname
#停止所有进程
supervisorctl stop all
#重启所有进程
supervisorctl restart all
#更新变动的进程配置
supervisorctl update
#查看进程状态
supervisorctl status
#命令窗口查看运行日志
supervisorctl tail projectname
supervisorctl tail -1000 projectname