linzebin

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

1. 安装

sudo yum install python-setuptools
sudo easy_install supervisor

2. 配置

安装成功后,输入supervisord 会显示配置默认读取目录:

image

安装成功后我看到有这个目录,所以就把配置放在这了:

image

a) 初始化配置文件

echo_supervisord_conf > /etc/supervisor/supervisord.conf

b) 指定配置文件

supervisord -c /etc/supervisor/supervisord.conf

c) 指定守护程序配置

sudo vim /etc/supervisor/supervisord.conf

d) 解注并编辑

“;”表示注释, 删了就解注了

[include]
files = conf.d/*.conf

e) 创建配置

sudo mkdir /etc/supervisord.d/conf.d

sudo vim hellmvc.conf

粘入以下内容:

[program:hellomvc]
command=/usr/local/bin/dotnet hellomvc.dll
directory=/var/aspnetcore/hellomvc
autorestart=true
stderr_logfile=/var/log/hellomvc.err.log
stdout_logfile=/var/log/hellomvc.out.log
environment=ASPNETCORE_ENVIRONMENT=Production
user=www-data
stopsignal=INT

保存退出:

:wq

f) 配置supervisor开机启动

sudo systemctl start supervisord.service

sudo systemctl enable supervisord.service

如无意外,现在您已可以访问到站点了

3. 配置UI

安装supervisor后,默认是有一个UI站点的,只要修改下配置,开放端口就可以访问得到

sudo vim /etc/supervisord.d/supervisord.conf

找到这一段,并修改,由于我要公网可访问,所以我只写了个端口,这样就允许任意IP了

image

image

image

 

PS:

问题排查:

1. 确定守护进程是否运行中:

image

像这样就是运行中的了

2. 如无守护进程,则启动失败,可能过supervisorctl 进行调试

supervisorctl -c /etc/supervisor/supervisord.conf

(直接执行 supervisord –c 或 supervisorctl –c 则会从默认目录读取配置(这里我配置放在了别的地方,所以需要要指定配置文件的路径))

3. 查看网关端口是否正常 工作

 

上一篇:  .NET Core 部署到CentOS–2.创建守护进程, 通过Nginx公网访问

参考资料:

https://www.qcloud.com/community/article/240

http://www.gznotes.com/supervisor-socket-error-errno-101/

http://guoze.me/2014/12/17/supervisord-not-root/

posted on 2017-05-13 12:57  linzebin  阅读(508)  评论(0编辑  收藏  举报