linux下为.net core应用创建守护进程

1.Supervisor 安装

yum install python-setuptools
easy_install supervisor

2.配置 Supervisor

mkdir /etc/supervisor
echo_supervisord_conf > /etc/supervisor/supervisord.conf

指定配置文件

supervisord -c /etc/supervisor/supervisord.conf
vi /etc/supervisor/supervisord.conf

在最后增加

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

3..net core 程序配置

安装完成之后,在 /ect/supervisor/conf.d/ 目录下新建一个配置文件common.conf
打开common.conf ,写入如下命令:

[program:common]
command=dotnet iss.ipsa.common.host.dll #要执行的命令
directory=/usr/service #命令执行的目录
environment=ASPNETCORE__ENVIRONMENT=Production #环境变量
user=root #进程执行的用户身份
stopsignal=INT
autostart=true #是否自动启动
autorestart=true #是否自动重启
startsecs=1 #自动重启间隔
stderr_logfile=/var/log/common.err.log #标准错误日志
stdout_logfile=/var/log/common.out.log #标准输出日志

配置好以后 (:wq保存退出),需要重新加载一下配置

sudo supervisorctl shutdown
sudo supervisord -c /etc/supervisor/supervisord.conf

或者你可以直接重启 Supervisor:

sudo service supervisor stop
sudo service supervisor start


如果启动的时候报错,可以打开位于/etc/log/supervisor/supervisord.log文件来查看具体的日志。

其中dotnet 命令输出的日志文件分别为位于

/var/log/common.err.log
/var/log/common.out.log

在这些文件里面你可以查看程序中的异常信息或者是运行信息。

ps:

Supervisor 常用命令

supervisorctl shutdown #关闭所有任务
supervisorctl stop|start program_name #启动任务
supervisorctl status #查看所有任务状态
ps -ef | grep common #查看进程信息
原文地址:https://www.cnblogs.com/qinghub/p/6396382.html