安装Supervisor

yum install python-setuptools

easy_install supervisor

配置Supervisor

mkdir /etc/supervisor

echo_supervisord_conf > /etc/supervisor/supervisord.conf

cd /etc/supervisor

vim supervisord.conf

编辑supervisord.conf文件

配置启动路径,移动文件最后,找到:

;[include]
;files = relative/directory/*.ini

替换为:

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

配置启用管理界面功能,增加如下代码(这里默认不用输入用户名密码,当然也可以配置输入用户名,密码才能使用管理界面):

;以下内容开启http服务
[inet_http_server]
port=192.168.3.162:

保存并退出

配置dotnet启动

cd /etc/supervisor/

mkdir conf.d

cd conf.d

touch myapi.conf

vim myapi.conf

编辑myapi.conf文件(根据你自己的实际情况书写):

[program:myapi]
command=/bin/bash -c "dotnet myapi.dll" ; 运行程序的命令
directory=/root/mytest/ ; 应用程序所在目录
stderr_logfile=/var/log/myapi.err.log ; 错误日志文件
stdout_logfile=/var/log/myapi.out.log ; 输出日志文件
environment=ASPNETCORE_ENVIRONMENT=Production ; 进程环境变量
user=root ; 进程执行的用户身份
stopsignal=INT
autostart=true ; 是否自动启动
autorestart=true ; 程序意外退出是否自动重启
startsecs= ; 自动重启间隔时间秒

保存并退出

如果有多个dotnet需要守护,这里需要写多份配置文件。

运行Supervisor

supervisord -c /etc/supervisor/supervisord.conf

supervisorctl reload

查看Supervisor管理界面

查看管理界面,浏览器中输入刚刚配置的IP与端口:http://192.168.3.162:9001

发现自己的dotnet进程已经正常启动了。当然这还不够,我们还需要让Supervisor开机自动启动。

设置开机自动启动

cd /usr/lib/systemd/system/

touch supervisord.service

vim supervisord.service

编辑supervisord.service文件:

[Unit]
Description=Supervisor daemon [Service]
Type=forking
ExecStart=/usr/bin/supervisord -c /etc/supervisor/supervisord.conf
ExecStop=/usr/bin/supervisorctl shutdown
ExecReload=/usr/bin/supervisorctl reload
KillMode=process
Restart=on-failure
RestartSec=42s [Install]
WantedBy=multi-user.target

保存并退出

启动

systemctl enable supervisord

验证一下是否为开机启动:

systemctl is-enabled supervisord

重启电脑看看是否开机可以自动开启你的dotnet进程。

精心准备,转载请留下原文地址。

.Net Core实战教程(三):使用Supervisor配置守护进程的更多相关文章

  1. .Net Core实战教程(一):Linux下搭建项目

    .Net Core实战教程(一):Linux下搭建项目 附言 .net core 1.0的时候就开始关注了,一直没有用于项目.真正用于项目我是2.0开始使用的.这几年也总结出一些经验.最近有空就写出来 ...

  2. .Net Core实战教程(二):设置Kestrel的IP与端口的几种方法

    .Net Core实战教程(二):设置Kestrel的IP与端口的几种方法 1.直接写在代码方式 Program.cs代码如下: using System; using System.Collecti ...

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

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

  4. [Linux] PHP程序员玩转Linux系列-使用supervisor实现守护进程

    1.PHP程序员玩转Linux系列-怎么安装使用CentOS 2.PHP程序员玩转Linux系列-lnmp环境的搭建 3.PHP程序员玩转Linux系列-搭建FTP代码开发环境 4.PHP程序员玩转L ...

  5. CentOS6/7 配置守护进程

    CentOS6.x CentOS6中转用Upstrat代替以前的init.d/rcX.d的线性启动方式. 一.相关命令 通过initctl help可以查看相关命令 [root@localhost ~ ...

  6. Node+Express+MongoDB + Socket.io搭建实时聊天应用实战教程(三)--前后端环境配置

    前言 之前都是介绍一些基础知识,在这一节,我们就要开始实战coding了.正所谓磨刀不误砍柴工,准备工作显得尤为重要.很多demo只是追求效果的实现,并不注重整个demo的架构性.从我个人的角度看来, ...

  7. mybatis实战教程三:mybatis和springmvc整合

    一.搭建maven环境,引入相关jar 参考demo 二.写web.xml <?xml version="1.0" encoding="UTF-8"?&g ...

  8. mybatis实战教程三:多对多关联

    MyBatis3.0 添加了association和collection标签专门用于对多个相关实体类数据进行级联查询,但仍不支持多个相关实体类数据的级联保存和级联删除操作 一.创建student.te ...

  9. Vue2+VueRouter2+webpack 构建项目实战(三):配置路由,运行页面

    制作.vue模板文件 通过前面的两篇博文的学习,我们已经建立好了一个项目.问题是,我们还没有开始制作页面.下面,我们要来做页面了. 我们还是利用 http://cnodejs.org/api 这里公开 ...

随机推荐

  1. odoo10学习笔记十六:定时任务

    转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/11189382.html 一:定义定时器数据模型 模型中定义需要用到的字段.定时方法 from odoo im ...

  2. odoo10学习笔记十三:qweb报表

    转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/11189336.html 一:概述 报表是使用qweb定义的,报表的pdf导出是使用wkhtmltopdf来完 ...

  3. Centos7安装宝塔控制面板

    目录 宝塔面板安装和使用图文教程 1,通过ssh工具登录服务器 2,安装宝塔面板 2,登录宝塔面板 3,设置宝塔面板 3.1,首先我们进入面板设置 3.2,更改面板端口 3.3,绑定域名 3.4,绑定 ...

  4. vue-particles粒子动画插件的使用和爬坑出现垂直滚动条

    1下载==>cnpm install vue-particles --save-dev 2引入 注册-->main.js//插件 import VueParticles from 'vue ...

  5. Ubuntu下搭建Kubernetes集群(4)--部署K8S Dashboard

    K8S Dashboard是官方的一个基于WEB的用户界面,专门用来管理K8S集群,并可展示集群的状态.K8S集群安装好后默认没有包含Dashboard,我们需要额外创建它. 首先我们执行命令: wg ...

  6. 网络编程socket模块subprocess模块 粘包的解决

    什么是socket? tcp 可靠地面向连接协议 udp 不可靠的,无连接的服务,传送效率高

  7. Java8——Stream

    /* * 一.Stream API 的操作步骤: * * 1. 创建 Stream * * 2. 中间操作 * * 3. 终止操作(终端操作) */ public class TestStreamaA ...

  8. Dubbo支持的注册中心(二)

    1. Zookeeper 优点:支持网络集群 缺点:稳定性受限于 Zookeeper 2. Redis 优点:对服务器环境要求较高 缺点:对服务器环境要求较高 3. Multicast 优点:去中心化 ...

  9. [BZOJ1040][CODEVS1423][ZJOI2008]骑士

    题目描述 Description Z国的骑士团是一个很有势力的组织,帮会中汇聚了来自各地的精英.他们劫富济贫,惩恶扬善,受到社会各界的赞扬.最近发生了一件可怕的事情,邪恶的Y国发动了一场针对Z国的侵略 ...

  10. Apex 中插入更新数据的事件执行顺序

    在使用 Apex 代码插入或更新数据的时候,若干事件会被按顺序执行.了解这些顺序可以提高调试程序的效率,也可以避免不必要的错误. 可以参考官方文档. 事件的执行顺序 从数据库中读取要更新的数据记录或初 ...