.NET CORE+CENTOS部署+supervisor守护

一、安装.NetCore和发布项目1、要开始安装.NET,您需要注册微软签名密钥并添加微软产品提要。这只需要每台机器做一次。打开命令提示符并运行以下命令sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
sudo sh -c ‘echo -e "[packages-microsoft-com-prod]\nname=packages-microsoft-com-prod \nbaseurl= https://packages.microsoft.com/yumrepos/microsoft-rhel7.3-prod\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/dotnetdev.repo‘2、更新 yum:sudo yum update

3、安装依赖:
sudo yum install libunwind libicu4、安装.Net Core Sdk:(1)、先查看skd都有哪些版本sudo yum search dotnet-sdk

(2)安装:sudo yum install dotnet-sdk-2.1.200.x86_645、查看是否安装成功:dotnet --version6、创建项目dotnet new mvc WebDev7、运行项目dotnet run,这里就可以访问了,默认使用 http://localhost:5000如果执行成功,可以进行下面的步骤8、发布项目:dotnet publish 默认项目会发布到./bin/Debug/netcoreapp2.1/publish(netcoreapp2.1是我sdk的版本) 目录下9、进入到发布目录,执行命令:dotnete WebDev.dll,就会执行成功,直接访问  http://localhost:5000 ,说明发布成功二、安装nignx:curl -o  nginx.rpm http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpmrpm -ivh nginx.rpmyum install nginx输入:systemctl start nginx    来启动nginx。输入:systemctl enable nginx   来设置nginx的开机启动(linux宕机、重启会自动运行nginx不需要连上去输入命令)。三、配置防火墙:

命令:firewall-cmd --zone=public --add-port=80/tcp --permanent(开放80端口)

命令:systemctl restart firewalld(重启防火墙以使配置即时生效)四、配置nginx对ASP.NET Core应用的转发修改 /etc/nginx/conf.d/default.conf 文件将文件内容替换为server {    listen 80;    location / {        proxy_pass http://localhost:5000;        proxy_http_version 1.1;        proxy_set_header Upgrade $http_upgrade;        proxy_set_header Connection keep-alive;        proxy_set_header Host $host;        proxy_cache_bypass $http_upgrade;    }}
执行:nginx –s reload 使其即时生效

命令:dotnet
/bin/Debug/netcoreapp2.1/publish/WebApplication1.dll

到这里,.NetCore 部署已经完成;

四、配置守护服务(Supervisor)

supervisor的介绍详见:https://www.studyscript.com/Post/index/id/3038.html

1、安装supervisor

#yum install python-setuptools  //安装python安装工具
#easy_install supervisor  //安装supervisor

2、生成supervisor配置文件

 建立目录,并赋予所有者可读、可写、可执行(700)权限

#mkdir -m 700 -p /etc/supervisor

3、创建配置文件

#echo_supervisord_conf > /etc/supervisor/supervisord.conf

4、修改配置文件

#vim /etc/supervisor/supervisord.conf

在文件最后加上

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

5、创建进程配置文件

  5.1创建进程配置文件存放目录

  #mkdir -m 700 /etc/supervisor/conf.d

  5.2、创建进程配置文件

  #vim /etc/supervisor/conf.d/IO_Spider_WebAPI.conf

  编辑内容

[program:IO_Spider_WebAPI]
command=/bin/bash -c "dotnet xxgk.dll"
directory=/home/zhangfei/IO_Spider/WebAPI/
autorestart=true
stderr_logfile=/var/log/IO_Spider_WebAPI.error.log
stdout_logfile=/var/log/IO_Spider_WebAPI.stdout.log
environment=ASPNETCORE_ENVIRONMENT=Development
user=root
stopsignal=INT

6、创建supervisor自启动服务

  6.1、创建服务文件

  #vim /lib/systemd/system/supervisor.service

  6.2、编辑内容

[Unit]
Description=supervisor
[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

7、赋权

#chmod 754 /lib/systemd/system/supervisor.service

8、设置开机自启动

#systemctl enable supervisor.service

9、运行服务

#systemctl start supervisor.service

10、查看进程执行情况

#supervisorctl

11、进入supervisor提示符之后输入“status”查看,或者#supervisorctl status



 

原文地址:https://www.cnblogs.com/JoinLet/p/9271297.html

时间: 2024-10-19 17:09:54

.NET CORE+CENTOS部署+supervisor守护的相关文章

centos 下Supervisor 守护进程基本配置

supervisor:C/S架构的进程控制系统,可使用户在类UNIX系统中监控.管理进程.常用于管理与某个用户或项目相关的进程. 组成部分supervisord:服务守护进程supervisorctl:命令行客户端Web Server:提供与supervisorctl功能相当的WEB操作界面XML-RPC Interface:XML-RPC接口 安装 easy_install supervisor 创建默认的配置文件 echo_supervisord_conf >/etc/supervisord

.NET Core 部署到CentOS–3.supervisord守护进

1. 安装 sudo yum install python-setuptoolssudo easy_install supervisor 2. 配置 安装成功后,输入supervisord 会显示配置默认读取目录: 安装成功后我看到有这个目录,所以就把配置放在这了: a) 初始化配置文件 echo_supervisord_conf > /etc/supervisor/supervisord.conf b) 指定配置文件 supervisord -c /etc/supervisor/supervi

.NET Core项目部署到Linux(Centos7)(一)前言

目录 1.前言 2.环境和软件的准备 3.创建.Net Core API项目 4.VMware Workstation虚拟机及Centos 7安装 5.Centos 7安装.Net Core环境 6.发布.Net Core项目到Linux 7.启动和停止.Net Core项目 8.为.Net Core项目创建Supervisor进程守护监控 9.防火墙配置,允许外网或局域网访问.Net Core站点 10.总结 ASP.NET Core 是一个新的开源和跨平台的框架,用于构建如 Web 应用.物

NET Core项目部署

NET Core项目部署到linux(Centos7) 阅读目录 1.开篇说明 2.Jexus简单说明 3.Visual Studio 2015本地发布并且测试 4.配置Jexus并且部署.NET Core说明 5.其它知识点总结 回到顶部 1.开篇说明 a 上篇博客简单的说明了一下 使用.NET Core开发的一个总结,地址是:(http://www.cnblogs.com/hanyinglong/p/6442148.html),那么这篇博客我们就在上一篇博客的基础上对其代码进行部署,将其部署

NET Core站点部署到Linux服务器

.NET跨平台之旅:将QPS 100左右的ASP.NET Core站点部署到Linux服务器上 今天下午我们将生产环境中一个单台服务器 QPS(每秒请求数)在100左右的 ASP.NET Core 站点部署到了 Linux 服务器上,这是我们解决了在 .NET Core 上使用 EnyimMemcached(memcached客户端)的问题之后,.NET 跨平台之旅迈出的重要一步.这个 ASP.NET Core 站点,既用了缓存,也有数据库访问操作,是一个典型的 Web 站点,如果它能持续稳定运

NET Core Docker部署

NET Core Docker部署 前言 在前面文章中,介绍了 ASP.NET Core在 macOS,Linux 上基于Nginx和Jexus的发布和部署,本篇文章主要是如何在Docker容器中运行ASP.NET Core应用程序. ASP.NET Nginx 发布和部署 :http://www.cnblogs.com/savorboard/p/dotnet-core-publish-nginx.html. Asp.Net Jexus 发布和部署:http://www.cnblogs.com/

SpringBoot(二)CentOS部署SpringBoot项目从0到1

在之前的博文<详解intellij idea搭建SpringBoot>介绍了idea搭建SpringBoot的详细过程, 并在<CentOS安装Tomcat>中介绍了Tomcat的安装,前面几篇文章实际上已经充分准备好了部署Linux的必要条件.那么今天来看看如何在CentOS部署SpringBoot,让你的SpringBoot在服务器上跑起来. vLinux部署springboot 从0到1,5步走,在Linux Tomcat部署springboot: 1. <CentOS

.NET Core跨平台部署

.NET Core跨平台部署 1. Windows-IIS 大家对于在IIS上部署.NET站点已经驾轻就熟了,部署.NET Core也没有什么本质区别,但是这其中仍然有一些细节是不同的,下面记录了一些我在部署时遇到的问题 1.1 安装.NET Core Windows Server Hosting 要在IIS上运行ASP.NET Core,必须安装.NET Core Windows Server Hosting 安装完成后最好重启IIS 如果没有安装该组件就直接打开部署的网站会出现 500.19

ASP.NET Core教程:ASP.NET Core程序部署到Linux

一.前言 这篇文章我们将讲解如何将ASP.NET Core 程序部署到Linux.这里我们使用的是虚拟机里面安装的Centos7.这里的ASP.NET Core程序,以上篇文章中发布的框架依赖文件为例进行讲解. 二.安装运行时环境 1.在线安装 我们只是在Linux系统上面部署应用程序,所以只需要安装ASP.NET Core Runtime即可.在安装.NET之前,我们需要先注册Microsoft密钥和源,在终端里面执行下面的命令: sudo rpm -Uvh https://packages.