CentOS7 安装及配置supervisor

安装
方式一:yum安装

yum install supervisor
 如果yum安装无法找到资源,可以通过easy_install

方式二:easy_install 安装

easy_install supervisor
配置
1)创建配置文件夹

mkdir /etc/supervisor
2)创建配置文件

echo_supervisord_conf > /etc/supervisor/supervisord.conf
3)修改配置文件

 vim /etc/supervisor/supervisord.conf
a. 将[include]节点改为

[include]
files=/etc/supervisor/conf.d/*.conf
*特别注意:首尾需无空格,无分号,需顶格

 b. 修改所有的/tmp路径
 

/tmp/supervisor.sock 改成 /var/run/supervisor.sock
 
/tmp/supervisord.log 改成 /var/log/supervisor.log
 
/tmp/supervisord.pid 改成 /var/run/supervisor.pid
 由于tmp路径的文件夹会不定时被linux清理掉,导致supervisor无法正常运行且报错:unix:///tmp/supervisor.sock no such file

复制更新后的配置文件覆盖掉/etc/supervisord.conf(不加这步后面supervisorctl reload会报错)

cp /etc/supervisor/supervisord.conf /etc/supervisord.conf

 

 4)在目录“/etc/supervisor”下创建dotnet core 进程配置文件存放目录“conf.d”

mkdir /etc/supervisor/conf.d
5)创建进程配置文件

vim /etc/supervisor/conf.d/MyDotNetName.conf
"MyDotNetName"可以为dotnet core 入口dll文件名字 ,插入内容:

[program:MyDotNetName]
command=php /home/wwwroot/default/test_supervisor.php
directory=/home/wwwroot/default
stderr_logfile=/var/log/MyDotNetName.error.log
stdout_logfile=/var/log/MyDotNetName.stdout.log
environment=ASPNETCORE_ENVIRONMENT=Production
user=root
stopsignal=INT
autostart=true
autorestart=true
startsecs=1
*特别注意:首尾需无空格,无分号,需顶格,且无注释

以下是文件参数注释:
[program:MyDotNetName] ;显示名称
command=dotnet MyDotNetName.dll  ;运行命令,启动dotnet进程
directory=/usr/PublishOutput/   ;MyDotNetName目录
stderr_logfile=/var/log/MyDotNetName.error.log  ;错误日志文件
stdout_logfile=/var/log/MyDotNetName.stdout.log  ;日志文件
environment=ASPNETCORE_ENVIRONMENT=Production  ;进程环境变量
user=root   ;进程执行用户
autostart=true  ;自动启动
autorestart=true   ;是否自动重启
startsecs=1     ;自动重启间隔时间
 6)启动supervisor,并检查进程

supervisord -c /etc/supervisor/supervisord.conf
ps -ef | grep supervisor
ps -ef | grep dotnet
设置开机自启动
1)创建supervisor 自启动服务

vim /etc/systemd/system/supervisor.service
编辑内容:

[Unit]
Description=supervisor
 
[Service]
Type=forking
ExecStart=/usr/bin/supervisord -c /etc/supervisor/supervisord.conf
ExecStop=/usr/bin/supervisorctl shutdown
ExecReload=/usr/bin/supervisorctl reload
KillMode=process
Restart=on-failure
RestartSec=10s
 
[Install]
WantedBy=multi-user.target
 2)使配置生效

systemctl daemon-reload
3)设置服务开机启动,即设置enable

systemctl enable supervisor.service
 4)启动服务

systemctl start supervisor.service
远程管理
 1)修改配置文件

vim /etc/supervisor/supervisord.conf
将[inet_http_server]节点改为

[inet_http_server]
port=*:9001                  ;ip 加端口
username=admin               ;登陆账号,可以不设,建议设置
password=123456              ;登陆账户,可以不设,建议设置
*特别注意:每行开头默认有分毫,需删除分号 

2)设置防火墙开放9001端口

firewall-cmd --zone=public --add-port=9001/tcp --permanent
 参数--permanent表示永久生效 

3)重启服务

supervisorctl reload
 4)浏览器打开127.0.0.1:9001正常访问即可

常用命令
sudo service supervisor stop 停止supervisor服务
 
sudo service supervisor start 启动supervisor服务
 
supervisorctl shutdown #关闭所有任务
 
supervisorctl stop|start program_name #启动或停止服务
 
supervisorctl status #查看所有任务状态
 
supervisorctl reload #修改配置文件后,重新加载生效
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值