linux部署dotnetcore应用(linux部署多个dotnetcore网站)

技术在Linux下怎么为dotnet创建守护进程本篇内容介绍了“在Linux下怎么为dotnet创建守护进程”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧

本文介绍了关于“如何在Linux下为dotnet创建一个守护进程”的知识。很多人在实际办案过程中都会遇到这样的困难。接下来,让边肖带领大家学习如何应对这些情况!希望大家认真阅读,学点东西!

00-1010在linux或unix操作系统中,Daemon是后台运行的特殊进程,它独立于控制终端,定期执行某些任务或等待处理某些事件。在linux中,每个系统和用户之间的接口被称为终端,从这个终端运行的每个进程都会被附加到这个终端上。这个终端被称为这些过程的控制终端。当控制终端关闭时,相应的进程将自动关闭。但是,守护进程可以突破这个限制。它离开终端,在后台运行。离开终端的目的是防止进程的信息在任何终端显示,并且进程不会被任何终端生成的终端信息中断。它从执行时开始运行,直到整个系统关闭。

这里,创建守护进程是指通过Linux上发布的ASP.NET Core程序的dotnet xxx.dll命令的主机进程来创建守护进程。

在Linux上有很多管理进程的工具,我们使用Supervisor来做到这一点。

原因有二:

1.微软官方文档推荐,降低学习成本。

2.它不一定是最好的,但一定是最完整的文件。

什么是守护进程

Supervisor是Python(2.4)开发的。它是一个允许用户基于Unix系统管理进程的Client/Server系统,提供了很多管理进程的功能。

正式文件:http://supervisord.org/

00-1010只需使用brew工具直接安装在masOS中:

brew安装主管

使用以下命令在linux中安装:

人的本质

sudo apt-get安装主管

摘录

百胜安装主管

大蟒

pip安装supervosor

简易安装管理器

安装后:

在Linux下怎么为dotnet创建守护进程

mac: ~杨晓东$ brewinstallsupervisor

警告:已安装的supervisor-3 . 2 . 1

Supervisor 介绍

完成后,在/ect/supervisor/conf.d/目录中创建新的配置文件(触摸HelloWebApp.conf),并将其命名为HelloWebApp.conf

打开hellowebapp . conf(vim hellowebapp . conf)并编写以下命令:

[程序:HelloWebApp]

命令=要执行的命令

目录=/home/yxd/workspace/publish #命令执行目录

环境=aspnetcore _ _环境=生产#环境变量

用户=www-data#流程执行的用户身份

stopsignal=INT

Autostart=true#是否自动启动?

自动重新启动=true#您想自动重新启动吗?

Secs=1 #自动重启间隔

stder _ log file=/var/log/hellowebapp . err . log #标准错误日志

stdout _ log file=/var/log/hellowebapp . out . log #标准输出日志

p>配置好以后 (: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/HelloWebApp.err.log
/var/log/HelloWebApp.out.log

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

打开浏览器,输入http://localhost:5000发现已经可以浏览了。

Supervisor 常用命令

supervisorctl shutdown #关闭所有任务

supervisorctl stop|start program_name

supervisorctl status #查看所有任务状态

Supervisor UI 管理台

Supervisor 默认给我们提供了一个图形界面来供我们管理进程和任务,在 macOS 中默认配置的有,但是在 Linux 中我们需要手动开启一下。

打开位于/etc/supervisor/supervisord.conf文件,添加inet_http_server 节点

在Linux下怎么为dotnet创建守护进程

然后就可以通过界面来查看运行的进程了:

在Linux下怎么为dotnet创建守护进程

测试一下

最后,我们测试一下是否会自动重启,开机自动运行?

  • 1、进程管理中干掉dot net ,发现可以重新启动。以下是日志:

2016-07-09 12:24:18,626 INFO spawned: 'HelloWebApp' with pid 1774
2016-07-09 12:24:19,766 INFO success: HelloWebApp entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2016-07-09 12:27:43,208 INFO exited: HelloWebApp (exit status 0; expected)
2016-07-09 12:27:44,223 INFO spawned: 'HelloWebApp' with pid 3687
2016-07-09 12:27:45,243 INFO success: HelloWebApp entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
  • 2、重启机器,发现可以自动运行。

“在Linux下怎么为dotnet创建守护进程”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/156264.html

(0)

相关推荐

  • 圆锥的体积公式是什么,锥形的体积的计算公式是什么

    技术圆锥的体积公式是什么,锥形的体积的计算公式是什么圆锥体体积计算:根据圆柱体积公式V=Sh(V=πr²h)圆锥的体积公式是什么,得出圆锥体积公式:V=1/3sh,其中S是圆柱的底面积,h是圆柱的高,r是圆柱的底面半径。

    生活 2021年10月21日
  • 如何解决Hibernate批量更新问题

    技术如何解决Hibernate批量更新问题这篇文章主要介绍了如何解决Hibernate批量更新问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。对于Hib

    攻略 2021年12月8日
  • C#通讯框架知识点有哪些

    技术C#通讯框架知识点有哪些这篇文章主要介绍“C#通讯框架知识点有哪些”,在日常操作中,相信很多人在C#通讯框架知识点有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C#通讯框架知识点

    攻略 2021年11月26日
  • 第13章 约束

    技术第13章 约束 第13章 约束第13章_约束1. 约束(constraint)概述
    1.1 为什么需要约束
    数据完整性(Data Integrity)是指数据的精确性(Accuracy)和可靠性(R

    礼包 2021年11月25日
  • VUE3 之 template 语法

    技术VUE3 之 template 语法 VUE3 之 template 语法1. 概述
    老话说的好:干一行,爱一行,踏实工作才是真正快乐的源泉。言归正传,今天继续聊 VUE3 的话题,今天聊聊temp

    礼包 2021年12月16日
  • 怎样迅速掌握HTTP代理协议

    技术怎样迅速掌握HTTP代理协议小编给大家分享一下怎样迅速掌握HTTP代理协议,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!1、首先从体系结构开始,弄清HTTP协议究竟要解决什么问题。面临哪些非功能约束

    攻略 2021年11月1日