.Net Core2.0 + Nginx + CentOS 部署

准备把项目往Linux上迁移,整个流程跑了一下,也遇到无数个坑。。。以下为亲测并修改后的完整流程。。。

安装ZIP

yum install -y unzip zip

Putty:WINDOWS上传文件到LINUX

pscp e:/1.tar.gz [email protected]118.190.143.191:/root/fanrong/

安装.net core 2.0 依赖的组件

yum install deltarpm epel-release unzip libunwind gettext libcurl-devel openssl-devel zlib libicu-devel

安装.net core 2.0

sudo dnf install libunwind libicu
curl -sSL -o dotnet.tar.gz https://aka.ms/dotnet-sdk-2.0.0-linux-x64
sudo mkdir -p /opt/dotnet && sudo tar zxf dotnet.tar.gz -C /opt/dotnet
sudo ln -s /opt/dotnet/dotnet /usr/local/bin
dotnet --help

安装nginx

yum install nginx

启动nginx

systemctl start nginx

设置nginx的开机启动(linux宕机、重启会自动运行nginx不需要连上去输入命令)

systemctl enable nginx

修改配置,监听5000端口:路径为:/etc/nginx/nginx.conf,修改如下:

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;
}

安装守护服务(Supervisor)

yum install python-setuptools
easy_install supervisor

配置Supervisor

mkdir /etc/supervisor
echo_supervisord_conf > /etc/supervisor/supervisord.conf

需要修改/etc/supervisor/supervisord.conf文件:
最底部的[include]修改为:

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

创建文件

vi /etc/supervisor/conf.d/test1.conf

内容如下:

[program:WebApplicationTest1]
command=dotnet WebApplicationTest1.dll
directory=/root/PublishOutput
environment=ASPNETCORE_ENVIRONMENT=Production
user=root
stopsignal=INT
autostart=true
autorestart=true
startsecs=1
stderr_logfile=/var/log/CManage.err.log
stdout_logfile=/var/log/CManage.out.log

然后需要把supervisord重新加载:

supervisord -c /etc/supervisor/supervisord.conf

执行

nginx -s reload

查看进程

ps -ef

如果想要supervisord开机自启动

新建一个“supervisord.service”文件

vim /usr/lib/systemd/system/supervisord.service

内容如下

# dservice for systemd (CentOS 7.0+)
# by ET-CS (https://github.com/ET-CS)
[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 #来验证是否为开机启动
时间: 2024-07-28 18:20:00

.Net Core2.0 + Nginx + CentOS 部署的相关文章

.Net core2.0+Mysql5.7部署到CentOS7.5完整实践经验

原文:.Net core2.0+Mysql5.7部署到CentOS7.5完整实践经验 本文为本人最近学习将.Net Core部署到Linux的一些经验总结,也提供点也和我一样对Linux接触不多的.Net Core开发者. 一.部署用到的环境和工具 1.Linux采用最新的CentOS7.5版本,开发使用VS2017搭配的.Net Core 为2.0的SDK版本号2.1.202(可到微软官方下载:https://dotnet.microsoft.com/download/dotnet-core/

[Redmine] Centos5上安装Redmine3.0+nginx+thin部署

项目管理的需要所以安装Redmine,其实wiki放在上面也不错的. 首先是安装,ruby应用第一次装,把坑记住. nginx, mysql是已经安装好的,只需要配置, 结合nginx的部署方式很多,我这里就选择一种,因为ruby没接触过,只是应用能跑通就好. 基础环境 centos5.1 ruby on rails 4.2 ruby 2.0.0 2.1 2.2 1.9.3 mysql5.0 + redmine 3.0.4 首先是版本对照 请参见 installation guide 下面都是r

centos 部署php+nginx+memadmin + memcached

nginx http://nginx.org/download/nginx-1.7.3.tar.gz php http://cn2.php.net/distributions/php-5.5.14.tar.gz php.memcache插件 http://pecl.php.net/get/memcache-3.0.8.tgz memadmin http://www.junopen.com/memadmin/memadmin-1.0.12.tar.gz install nginx tar -zxf

Centos7.2下Nginx配置SSL支持https访问(站点是基于.Net Core2.0开发的WebApi)

准备工作 1.基于nginx部署好的站点(本文站点是基于.Net Core2.0开发的WebApi,有兴趣的同学可以跳http://www.cnblogs.com/GreedyL/p/7422796.html) 2.证书颁发机构(CA)颁发的有效证书,其中我们需要两个文件,一个是 .key文件(私钥),另一个是 .crt或.pem文件(公钥) 核心功能 ? 通过指定由受信任的证书颁发机构(CA)颁发的有效证书,将服务器配置为侦听端口上的HTTPS流量. ? 通过配置nginx.conf文件来加强

centos 7 && dotnet core 2.0 && nginx && supervisor

前提 系统:centos 7 目录:/home/wwwroot/www.wuball.com dotnet core 2.0 官方指引 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.mi

CENTOS php 7.0 +nginx 环境下 安装yaf框架

 #php -v PHP 7.0.19 (cli) (built: May 12 2017 21:01:27) ( NTS ) Copyright (c) 1997-2017 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies #nginx -v nginx version: nginx/1.12.0 CentOS Linux release 7.2.1511 (Core) 本文前提是已搭建好ph

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

asp.net core2.0 部署centos7/linux系统 --守护进程supervisor(二)

原文:asp.net core2.0 部署centos7/linux系统 --守护进程supervisor(二) 续上一篇文章:asp.net core2.0 部署centos7/linux系统 --安装部署(一),遗留的问题而来,对程序添加守护进程,使网站可以持续化的运行起来. ? 1.介绍supervisor ?? ?Supervisor(http://supervisord.org/)是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,

将asp.net core2.0项目部署在IIS上运行

原文:将asp.net core2.0项目部署在IIS上运行 前言: ?与ASP.NET时代不同,ASP.NET Core不再是由IIS工作进程(w3wp.exe)托管,而是独立运行的.它独立运行在控制台应用程序中,并通过dotnet运行时命令调用.它并没有被加载到IIS工作进程中,但是IIS却加载了名为AspNetCoreModule的本地Module,这个Module用于执行外部的控制台程序. ?部署之前要确保你的IIS上已经安装了AspNetCoreModule托管模块,如果没有的话,点击