利用Supervisor 管理自己部署的应用程序
首先,在centos7下安装supervisor
yum install python-setuptools easy_install supervisor
然后新建配置文件
#新建supervisor文件夹
mkdir /etc/supervisor
#生成默认的配置文件
echo_supervisord_conf > /etc/supervisor/supervisord.conf
成功之后查看文件

然后编辑这个配置文件,配置成读取conf.d文件夹的配置文件,这样就不用写在一个文件里面

同时将[inet_http_server]下的注释去掉,修改为
[inet_http_server]
port=192.168.125.128:
username=admin
password=
这个是启动web界面管理,上面的Ip和端口可以换。
接下来就是编写执行命令了,在/etc/supervisor下新建conf.d文件夹,
在里面新建一个conf文件,命令内容如下(注意前后不能有空格)
[program:WebAPI]
command=/bin/bash -c "export ASPNETCORE_ENVIRONMENT=Development&&dotnet WebAPI.dll"
directory=/home/wwwroot/strategyApi/
autorestart=true
stderr_logfile=/var/log/WebAPI.err.log
stdout_logfile=/var/log/WebAPI.out.log
environment=ASPNETCORE_ENVIRONMENT=Production
user=root
stopsignal=INT
autostart=true
autorestart=true
startsecs=
其中第二行是执行多行命令设置启动环境,因为swagger页面需要配置在Development环境下才能打开,
日志记录建议分项目建文件夹,方便查找。我这里只是测试,就随便了。
然后启动
supervisord -c /etc/supervisor/supervisord.conf 或 supervisord
如果服务已经启动,使用以下命令重启
supervisorctl reload
查看自己的程序是否运行成功
ps -ef | grep dotnet

我这里是添加了三个服务。
然后进入界面

ps:如果打不开需要将配置的端口打开
firewall-cmd --zone=public --add-port=/tcp --permanent(开放80端口)
最后,记录一些常用的命令:
启动supervisord】
supervisord -c /etc/supervisord.conf 或 supervisord
【停止supervisord】
supervisorctl shutdown
【重新加载配置文件】
supervisorctl reload
【进程管理】
- 启动supervisord管理的所有进程
supervisorctl start all
- 停止supervisord管理的所有进程
supervisorctl stop all
- 启动supervisord管理的某一个特定进程
supervisorctl start program-name // program-name为[program:xx]中的xx
- 停止supervisord管理的某一个特定进程
supervisorctl stop program-name // program-name为[program:xx]中的xx
- 重启所有进程或所有进程
supervisorctl restart all // 重启所有supervisorctl reatart program-name // 重启某一进程,program-name为[program:xx]中的xx
- 查看supervisord当前管理的所有进程的状态
supervisorctl status
参考至:https://www.jianshu.com/p/805977544d7f
利用Supervisor 管理自己部署的应用程序的更多相关文章
- supervisor的安装部署及集群管理
supervisor的安装部署及集群管理 supervisor官网:http://www.supervisord.org/ 参考链接: http://blog.csdn.net/xyang81/art ...
- 使用Linux脚本更新Weblogic部署的应用程序
在利用Jenkins实现Weblogic应用自动部署的功能时,如何通过Shell 脚本自动更新Weblogic部署的应用程序呢? 可以使用weblogic.jar包中的weblogic.Deploye ...
- Mesos+Zookeeper+Marathon的Docker管理平台部署记录(1)
随着"互联网+"时代的业务增长.变化速度及大规模计算的需求,廉价的.高可扩展的分布式x86集群已成为标准解决方案,如Google已经在几千万台服务器上部署分布式系统.Docker及 ...
- supervisor 管理uwsgi 进程
Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动 重启.它是通过fork/exec的方式把这些被管理的进 ...
- Prism 4 文档 ---第11章 部署Prism应用程序
要成功移动Prism应用到生产中,需要对部署计划为应用程序的设计过程的一部分.本章介绍了注意事项和你需要采取的准备以部署应用程序,以及你要在用户手中获得部署程序所需要采取的行动. Si ...
- 使用supervisor管理后台进程
在linux中supervisor是用来管理后台进程的,是一个用python写的进程管理工具,可以让宕机的进程重启.这里我们大概讲一下用他来管理uWSGI. 一.安装supervisor 1.pyth ...
- 如何在Visual Studio 2017中使用C# 7+语法 构建NetCore应用框架之实战篇(二):BitAdminCore框架定位及架构 构建NetCore应用框架之实战篇系列 构建NetCore应用框架之实战篇(一):什么是框架,如何设计一个框架 NetCore入门篇:(十二)在IIS中部署Net Core程序
如何在Visual Studio 2017中使用C# 7+语法 前言 之前不知看过哪位前辈的博文有点印象C# 7控制台开始支持执行异步方法,然后闲来无事,搞着,搞着没搞出来,然后就写了这篇博文,不 ...
- Linux部署.NetCore站点 使用Supervisor进行托管部署
前言 之前终于在Linux上部署好了.NetCore站点,但是这个站点非常“脆弱”.当我的ssh连接关闭或者我想在当前连接执行其他命令时候就必须关闭dotnet站点的执行程序.这显然不是我想要达到的效 ...
- 部署Go语言程序的N种方式
部署Go语言项目 本文以部署 Go Web 程序为例,介绍了在 CentOS7 服务器上部署 Go 语言程序的若干方法. 独立部署 Go 语言支持跨平台交叉编译,也就是说我们可以在 Windows 或 ...
随机推荐
- 等待 Redis 应答
https://zhuanlan.zhihu.com/p/58608323 mq消息合并:由于mq请求发出到响应的时间,即往返时间, RTT(Round Time Trip),每次提交都要消耗RTT, ...
- LC 450. Delete Node in a BST
Given a root node reference of a BST and a key, delete the node with the given key in the BST. Retur ...
- udf提权小结
00x1 首先判断mysql版本, mysql版本 < 5.2 , UDF导出到系统目录c:/windows/system32/ mysql版本 > 5.2 ,UDF导出到安装路径MySQ ...
- 建站之星v2.7快速更换模版
网站建设很多人使用建站之星因为它的拖拽功能非常友好.但是很多人不会使用建站之星更换模版,网上的教程又复杂难懂,现在教大家一个简单快捷的办法. 方法/步骤 废话不多说,从模版目录找到你喜欢的模版 ...
- c语言 正则表达式 IP地址
#include <stdio.h> #include <string.h> #include <regex.h> #define SUBSLEN 10 /* 匹配 ...
- flutter编译ios的时候需要进行的操作:
pod install 执行这个命令,安装依赖
- linux简单命令1
1:-rw-r--r-- 第一位"-"表示文件类型("-"文件,"d"表示目录,"|"软连接,相当win7的快捷方式) ...
- Jquery异步请求数据实例代码
一.Jquery向aspx页面请求数据 前台页面JS代码: 代码如下: $("#Button1").bind("click", function () { $. ...
- TEC-2机微程序设计
了解TEC-2机的结构和基本的指令知识很重要,不理解而只知一味地照抄是学不到知识的.建议先阅读课件,再结合例子进行理解.以下例子只供参考,有些地方可以合并,具体的操作仍需见仁见智.理解并学会使用微指令 ...
- iOS-SDWebImage使用(转)
SDWebImage提供了如下三个category来进行缓存. MKAnnotationView(WebCache) UIButton(WebCache) UIImageView(WebCache) ...