简介

supervisor可以保证程序崩溃后,可以重新把程序启动起来等相关功能。

安装

yum install -y supervisor

安装好后在/etc/会生成一个supervisord.conf文件及一个supervisord.d文件目录

查看supervisor是否安装成功

supervisord --version

启动

supervisord -c /etc/supervisord.conf

查看supervisor是否启动成功

ps -ef|grep supervisord

设置supervisor 开机启动

systemctl enable supervisord

检查是否是开机启动

systemctl is-enabled supervisord

启动服务

systemctl start supervisord

启动时可能回报错:Another program is already listening on a port that one of our HTTP servers is config...rvisord.

解决方案:

执行命令 find / -name supervisor.sock  然后 unlink /路径/supervisor.sock 最后再执行启动命令 systemctl start supervisord

查看状态

systemctl status supervisord.service

配置supervisor ,web管理页面

修改配置信息,supervisor 默认配置文件,放在 /etc/supervisord.conf 路径中:

[inet_http_server]         ; HTTP 服务器,提供 web 管理界面
port=*: ; Web 管理后台运行的 IP 和端口
username=user ; 登录管理后台的用户名
password= ; 登录管理后台的密码

[include]                     
 files = supervisord.d/*.ini ;配置文件夹

修改完之后重启:

supervisorctl reload

然后通过http://ip:9001/访问web界面,账户名密码就是你配置的,效果如下:

创建配置文件

创建一个.ini文件,放在目录supervisord.d下

[program:demo] ;程序名称
command=dotnet demo.dll ; 运行命令
directory=/web/publish;目录
environment=ASPNETCORE_ENVIRONMENT=Production;环境变量
user=root;用户
stopsignal=INT
autostart=true;如果是true的话,子进程将在supervisord启动后被自动启动
autorestart=true;进程死掉后自动重启的情况
stderr_logfile=/var/log/demo/demo.err.log;错误日志文件
stdout_logfile=/var/log/demo/demo.out.log;输出日志文件

重启

systemctl restart supervisord

查看是否生效

supervisorctl status

然后把Xshell关了,浏览器中输入:http://ip:8080/api/values,也能看到以下页面:

supervisorctl 常用命令

查看任务状态:supervisorctl status

启动任务:supervisorctl start <name>

停止任务:supervisorctl stop <name>

重启任务:supervisorctl restart <name>

清除日志文件:supervisorctl  clear <name>

清除多个日志文件:supervisorctl  clear <name> <name>

清除所有日志文件:supervisorctl  clear all

移除任务:supervisorctl  remove <name>

Nginx代理配置

安裝nginx:Linux - CentOS 7 通过Yum源安装 Nginx

修改nginx.conf

添加一个服务

  server {
listen ;
server_name 47.106.98.252; location / {
root html;
index index.html index.htm;
proxy_pass http://localhost:8080;
}
}

检查配置文件是否成功

nginx -t

成功之后重启Nginx服务

systemctl restart nginx.service

测试

浏览器输入http://ip:/api/values,效果是一样的:

.Net Core 项目发布到Linux - CentOS 7(二)用Supervisor守护netcore进程的更多相关文章

  1. .Net Core 项目发布到Linux - CentOS 7(一)

    由于项目的需求,需要发布到Linux服务器上,在这里记录一下我发布的过程. 安装Linux 安装liunx系统很简单,网上也有很多教程,我是直接使用阿里云的CentOS 7.7 64位 部署环境 Li ...

  2. 关于.net Core项目发布在Linux上的填坑

    本文主要记录.net Core项目发布在Linux服务器上面所遇到的问题,防止遗忘是 1.在发布文件中执行 dotnet xxxxxx.dll的时候提示如下错误: An assembly specif ...

  3. .NET Core项目部署到Linux(Centos7)(二)环境和软件的准备

    目录 1.前言 2.环境和软件的准备 3.创建.NET Core API项目 4.VMware Workstation虚拟机及Centos 7安装 5.Centos 7安装.NET Core环境 6. ...

  4. linux centos Supervisor守护.netcore进程安装配置

    场景:当部署完.netcore程序后 使用dotnet xx.dll 后可以运行,但关闭shell或隔断时间会自动断开,此时部署的.netcore程序就不能访问了,此时需要用到Supervisor了 ...

  5. 将.NET Core Web Api发布到Linux(CentOS 7 64)

    将.NET Core(2.1) Web Api发布到Linux(CentOS 7 64) 近来在学习linux相关的一些东西,然后正巧想试一下把core的应用程序发布到Linux,毕竟跨平台.尝试一下 ...

  6. .NET Core跨平台:.NET Core项目部署到linux(Centos7)

    1.开篇说明 a 上篇博客简单的说明了一下 使用.NET Core开发的一个总结,地址是:(http://www.cnblogs.com/hanyinglong/p/6442148.html),那么这 ...

  7. ASP.NET Core 网站发布到Linux服务器(转)

    出处;ASP.NET Core 网站发布到Linux服务器 长期以来,使用.NET开发的应用只能运行在Windows平台上面,而目前国内蓬勃发展的互联网公司由于成本的考虑,大量使用免费的Linux平台 ...

  8. 部署.Net Core APi+Vue 到 linux centos 服务器(一)

    部署.Net Core APi+Vue 到 linux centos 服务器(一) 前言:项目采用的是 .net core 作为接口,vue作为前端. 此时需要把整个项目架设到linux centos ...

  9. java项目发布到linux服务器,tomcat正常启动但没加载项目

    问题描述: java项目发布到linux服务器,一切操作正确,linux命令启动tomcat后,查看日志启动tomcat正常,上传的war包已经解压成功,但是tomcat没加载项目. 解决方法: 1. ...

随机推荐

  1. Spring Cloud第一篇 | Spring Cloud前言及其常用组件介绍概览

    ​ ​本文是Spring Cloud专栏的第一篇文章,了解本篇文章内容有助于更好的理解后面文章 ​ 一.网站架构演变过程 1-1.传统架构 传统的SSH架构,分为三层架构 web控制层.业务逻辑层.数 ...

  2. Android View 的绘制流程之 Layout 和 Draw 过程详解 (二)

    View 的绘制系列文章: Android View 的绘制流程之 Measure 过程详解 (一) Android View 绘制流程之 DecorView 与 ViewRootImpl 在上一篇  ...

  3. 使用Python为中秋节绘制一块美味的月饼

    每逢佳节- 对于在外的游子,每逢佳节倍思亲.而对于996ICU的苦逼程序猿们,最期待的莫过于各种节假日能把自己丢在床上好好休息一下了.这几天各公司都陆续开始发中秋礼品了.朋友圈各种秀高颜值的月饼,所以 ...

  4. acm博弈论基础总结

    acm博弈论基础总结 常见博弈结论 Nim 问题:共有N堆石子,编号1..n,第i堆中有个a[i]个石子. 每一次操作Alice和Bob可以从任意一堆石子中取出任意数量的石子,至少取一颗,至多取出这一 ...

  5. Bless You Autocorrect!

    题目链接: https://odzkskevi.qnssl.com/0c87453efec2747f8e8a573525fd42f9?v=1533651456 题解: 这是一道Trie+BFS的题目: ...

  6. GlusterFS 存储

    GlusterFS简介: 互联网四大开源分布式文件系统分别是:MooseFS.CEPH.Lustre.GusterFS. GluterFS最早由Gluster公司开发,其目的是开发一个能为客户提供全局 ...

  7. ARTS-S pytorch中backward函数的gradient参数作用

    导数偏导数的数学定义 参考资料1和2中对导数偏导数的定义都非常明确.导数和偏导数都是函数对自变量而言.从数学定义上讲,求导或者求偏导只有函数对自变量,其余任何情况都是错的.但是很多机器学习的资料和开源 ...

  8. linux-touch 、mkdir、rm、pwd、which、locate、whatis

    1.touch: 创建空文件,修改文件时间戳信息 atime(access time):最近访问文件内容时间 mtime(modify time):最近修改文件内容时间 ctime(change ti ...

  9. 深度优先搜索 & 广度优先搜索

    目录 邻接表 邻接表的深度优先搜索 邻接表的广度优先搜索 临接数组 临接数组的深度优先搜索 临接数组的广度优先搜索 二叉树 二叉树的深度优先搜索 二叉树的广度优先搜索 邻接表 邻接表的深度优先搜索 假 ...

  10. 基于Storm的WordCount

    Storm WordCount 工作过程 Storm 版本: 1.Spout 从外部数据源中读取数据,随机发送一个元组对象出去: 2.SplitBolt 接收 Spout 中输出的元组对象,将元组中的 ...