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)

相关推荐

  • 高抬腿的正确做法,高抬腿的动作要领是什么

    技术高抬腿的正确做法,高抬腿的动作要领是什么原地高抬腿:运动者的位置大致不发生变化的高抬腿运动。  高抬腿跑:运动者在交替抬腿的同时向前(快速)移动。动作要领:标准动作是在保持上身挺直的情况下高抬腿的正确做法,两腿交替抬

    生活 2021年10月25日
  • Oracle 12c新特性有哪些

    技术Oracle 12c新特性有哪些本篇内容介绍了“Oracle 12c新特性有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够

    攻略 2021年11月15日
  • 牛客小白月赛41 小红的375

    技术牛客小白月赛41 小红的375 牛客小白月赛41 小红的375题目链接
    直接判断一个数是不是375的倍数很难,但是判断一个数是不是3000(注意3000=375 \(\times\) 8)的倍数却很

    礼包 2021年12月7日
  • gcc与arm-linux-gcc和arm-elf-gcc的关系是什么

    技术gcc与arm-linux-gcc和arm-elf-gcc的关系是什么gcc与arm-linux-gcc和arm-elf-gcc的关系是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解

    攻略 2021年10月22日
  • 【转载】EXCEL VBA 20个有用的ExcelVBA代码

    技术【转载】EXCEL VBA 20个有用的ExcelVBA代码 【转载】EXCEL VBA 20个有用的ExcelVBA代码1.显示多个隐藏的工作表
    如果你的工作簿里面有多个隐藏的工作表,你需要花很多

    礼包 2021年11月13日
  • Linux入门

    技术Linux入门 Linux入门1. 目录结构
    树状目录结构以下几个目录比较重要/常用
    /etc: 系统中的配置文件
    /bin, /sbin, /usr/bin, /usr/sbin: 这是系统预设的

    礼包 2021年10月20日