.net core在Linux系统部署

简介:
当前小菜的环境:Window 7,vs2017

1,.netCore Demo项目
暂且使用默认模板,这个和平常webForm,winForm一样创建,这里就略过了。

2,创建好默认工程后,直接iis Express运行,查看效果
2.1,可以发布后,使用CLI运行


3,发布工程
3.1,当前工程配置文件appsetting.json

对dependencies属性的”type”: “platform”进行注释

对prepublish属性值进行替换,替换如下”prepublish”: [ “bower install”, “dotnet bundle” ]

添加以下对象

“runtimes”: {
“centos.7-x64”: {}

}

3.2,在当前工程目录下,打开CLI

3.3,执行以下命令行

dotnet publish -r centos.7-x64

3.4,对发布后的代码进行压缩包,方便服务器上传

目录是~\bin\Debug\netcoreapp2.0\centos.7-x64\publish

4,服务器和域名准备
百度云购买BCC,系统: CentOS Linux 7.5.1804 (Core)

linux系统买好后,直接安装了宝塔,搭建了LNMP环境,所以这个篇博客就略过nginx安装了。

4.1,linux环境安装.netCore

参考官网

https://www.microsoft.com/net/download/linux-package-manager/centos/runtime-current

dotnet xxx.dll

提示aspnetcore不存在时执行以下代码

sudo yum install aspnetcore-store-2.0.7

5,服务
安装配置守护进程(Supervisor)

使用Supervisor对ASP.NET Core网站应用进行监控,使网站可以持续运行,不然退出Shell后网站就停止了。

$ # 安装Supervisor

$ yum install python-setuptools

$ easy_install supervisor

$ #配置Supervisor

$ mkdir /etc/supervisor

$ echo_supervisord_conf > /etc/supervisor/supervisord.conf

修改supervisord.conf文件,将文件最后的内容修改如下:

创建目录conf.d,在目录下创建文件TestAspNetCoreWeb.conf

文件内容如下:

[program:TestDotNetCoreWeb]

command=dotnet TestAspNetCoreWeb.dll

directory=~/dotnet/PublishOutput

autorestart=true

stderr_logfile=/var/log/TestDotNetCoreWeb.err.log

stdout_logfile=/var/log/TestDotNetCoreWeb.out.log

environment=ASPNETCORE_ENVIRONMENT=Production

user=root

stopsignal=INT

运行supervisord并查看进程是否生效。

$ supervisord -c /etc/supervisor/supervisord.conf

$ ps -ef | grep TestDotNetCoreWeb

配置文件如有修改,使用命令supervisorctl reload重新加载。

以上步骤是小菜亲自测试的结果 


目录
相关文章
|
3天前
|
存储 负载均衡 Linux
【Linux 系统】进程间通信(匿名管道 & 命名管道)-- 详解(下)
【Linux 系统】进程间通信(匿名管道 & 命名管道)-- 详解(下)
|
3天前
|
消息中间件 Unix Linux
【Linux 系统】进程间通信(匿名管道 & 命名管道)-- 详解(上)
【Linux 系统】进程间通信(匿名管道 & 命名管道)-- 详解(上)
|
3天前
|
缓存 Linux 调度
【Linux 系统】进程控制 -- 详解
【Linux 系统】进程控制 -- 详解
|
17小时前
|
存储 监控 Ubuntu
Linux系统之GoAccess实时Web日志分析工具的基本使用
【5月更文挑战第22天】Linux系统之GoAccess实时Web日志分析工具的基本使用
9 0
|
1天前
|
Linux 测试技术 开发工具
Linux系统之advcpmv工具的安装和基本使用
【5月更文挑战第21天】Linux系统之advcpmv工具的安装和基本使用
13 1
|
3天前
|
设计模式 安全 Java
【Linux 系统】多线程(生产者消费者模型、线程池、STL+智能指针与线程安全、读者写者问题)-- 详解
【Linux 系统】多线程(生产者消费者模型、线程池、STL+智能指针与线程安全、读者写者问题)-- 详解
|
3天前
|
安全 算法 Linux
【Linux 系统】多线程(线程控制、线程互斥与同步、互斥量与条件变量)-- 详解(下)
【Linux 系统】多线程(线程控制、线程互斥与同步、互斥量与条件变量)-- 详解(下)
|
3天前
|
存储 Linux 程序员
【Linux 系统】多线程(线程控制、线程互斥与同步、互斥量与条件变量)-- 详解(中)
【Linux 系统】多线程(线程控制、线程互斥与同步、互斥量与条件变量)-- 详解(中)
|
3天前
|
缓存 Linux 调度
【Linux 系统】多线程(线程控制、线程互斥与同步、互斥量与条件变量)-- 详解(上)
【Linux 系统】多线程(线程控制、线程互斥与同步、互斥量与条件变量)-- 详解(上)
|
3天前
|
存储 Unix Linux
【Linux 系统】进程信号 -- 详解(下)
【Linux 系统】进程信号 -- 详解(下)