ASP.NET Core 发布 centos7 配置守护进程_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > ASP.NET Core 发布 centos7 配置守护进程

ASP.NET Core 发布 centos7 配置守护进程

 2017/12/8 13:15:13  wenqing-vikcy  程序员俱乐部  我要评论(0)
  • 摘要:ASP.NETCore应用程序发布linux在shell中运行是正常的。可一但shell关闭网站也就关闭了,所以要配置守护进程,用的是Supervisor,本文主要记录配置的过程和过程遇到的问题安装Supervisor1yuminstallpython-setuptools2easy_installsupervisor配置Supervisor3mkdir/etc/supervisor4echo_supervisord_conf>/etc/supervisor/supervisord
  • 标签:.net ASP.NET net 发布 配置 CentOS

ASP.NET Core应用程序发布linux在shell中运行是正常的。可一但shell关闭网站也就关闭了,所以要配置守护进程, 用的是Supervisor,本文主要记录配置的过程和过程遇到的问题

安装Supervisor

 1  yum install python-setuptools

 2   easy_install supervisor

配置Supervisor

 3  mkdir /etc/supervisor

 4  echo_supervisord_conf > /etc/supervisor/supervisord.conf

 5 上面语句执行完后就能在/etc/supervisor 文件夹下找到文件 supervisord.conf 如图

 

下面我们要将文件的结尾部分替换掉以便后面能读取到我们的配置文件

在文件的结尾找到以下

class="brush:c#;toolbar:false">;[include];files = relative/directory/*.ini

将代码替换为如下,注意前后不能带 ;和空格符号

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

6 进入目录 /etc/supervisor/ 新建 conf.d文件夹,conf.d文件夹下新建 myproject.conf文件

   具体内容如下,注意命令执行的目录要写你项目文件所在的目录,两个日志文件的名称最好也统一改一下

[program:myproject]
command=dotnet myproject.dll ; 运行程序的命令
directory=/root/mypro/ ; 命令执行的目录
autorestart=true ; 程序意外退出是否自动重启
stderr_logfile=/var/log/myproject.err.log ; 错误日志文件
stdout_logfile=/var/log/myproject.out.log ; 输出日志文件
environment=ASPNETCORE_ENVIRONMENT=Production ; 进程环境变量
user=root ; 进程执行的用户身份
stopsignal=INT

  

运行supervisord并查看

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

8  ps -ef | grep myproject  # 这行命令是查看有关myproject的所有进程 ,【注意】myproject是上面 program:myproject 的命名 ,如果你看到如下图 ,说明运行成功,如果没有成功可以看上面配置的那个错误日志文件

9  supervisorctl reload  #最后重新载入配置

下面整理一些关于 Supervisor 的命令 ,参考链接https://segmentfault.com

 

 

命令说明 supervisord 初始启动Supervisord,启动、管理配置中设置的进程 supervisorctl stop myproject 停止某一个进程(programxxx),programxxx为[program:chatdemon]里配置的值,这个示例就是chatdemon supervisorctl start myproject 启动某个进程 supervisorctl restart myproject 重启某个进程 supervisorctl stop groupworker 重启所有属于名为groupworker这个分组的进程(start,restart同理) supervisorctl stop all 停止全部进程,注:start、restart、stop都不会载入最新的配置文件 supervisorctl reload 载入最新的配置文件,停止原有进程并按新的配置启动、管理所有进程 supervisorctl update 根据最新的配置文件,启动新配置或有改动的进程,配置没有改动的进程不会受影响而重启。注意:显示用stop停止掉的进程,用reload或者update都不会自动重启

 

温馨提示:如果要结束某个守护进程,我们可以 ps -ef | grep supervisord 查出所有守护进程相关的进程

然后再用  kill -9 pid   结束进程

 

详细参考: http://www.cnblogs.com/zhaopei/p/netcore.html

 

本文永久更新地址:http://siyouku.cn/article/6861.html

asp.net core 开发框架:https://github.com/2014fighting/CodeFrame.Web.git

 

 
发表评论
用户名: 匿名