(超全面)CentOS7 安装及配置supervisor

3 篇文章 0 订阅
2 篇文章 0 订阅

安装

方式一: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

 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=dotnet MyDotNetName.dll
directory=/usr/PublishOutput/
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
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值