一、阅读前须知

  1.使用 jexus整合asp.net core的优点:

      1)支持多站点,同一端口可以同时支持任何多的asp.net core应用程序;
      2)应用程序启动、停止、重启与站点的启动、停止、重启等操作一致,无需手工管理asp.net core应用程序;
      3)具有应用程序崩溃后自动重启功能,为企业级不间断运行保障;
      4)具有比反向代理更高的性能优势。

  

      5)提供与IIS相同的HTTP环境参数。

  2.本文属于"完整发布",不经过Visual Studio2015 Update3发布,并且自带运行时的发布过程

  3.不需要在Linux下安装.Net Core SDK

二、手动发布步骤

  1.使用VisualStudio2015 Update3新建 ASP.NET Core应用程序

2.找到工程根目录下 "project.json"

2.1 禁用 "type"

2.2 注释 "scripts"节点

2.3 添加 "runtimes"节点,centos7.1服务器

2.4 CMD进入工程根目录

cd /d 工程目录

2.5  还原包

dotnet restore

2.6 发布

dotnet publish -r centos.-x64

2.7  预览手动发布后的目录

\bin\Debug\netcoreapp1.\centos.-x64\publish

三、整合为Jexus站点,作为jexus进程后台运行

3.1  安装jexus5.8.2

cd /tmp
wget linuxdot.net/down/jexus-5.8.-x64.tar.gz
tar zxvf jexus-5.8.-x64.tar.gz
cd jexus/
cd siteconf/
vi default

3.2 添加AppHost

 (jexus作者介绍AppHost)

  AppHost的配置格式是:
  AppHost={CmdLine=应用程序命令行; workRoot=应用程序工作目录; Port=应用程序HTTP侦听端口},其中:
 "CmdLine" 表示启动应用程序的命令行,如:dotnet /var/www/site1/app.dll;
 "workRoot"表示应用程序工作目录,如:/var/www/site1;
 "Port"表示这个HTTP应用程序所使用的侦听端口,如:5000(Asp.Core默认端口是5000)。

3.3 将发布的程序拷贝到服务器(\bin\Debug\netcoreapp1.0\centos.7-x64\publish\),本人用的是WinSCP

3.4 配置执行权限(重点)

cd /var/www/default
sudo chmod a+x CoreApp
ls

授权后:

3.5 试运行自宿主工作情况

cd /var/www/default
dotnet CoreApp.dll

 为什么在jexus正式管控它之前要手工试试?
  1)确保应用可以成功开启

  2)减少排错步骤

  3)确认端口号

3.6 启动jexus

 cd ../
./jws start

3.7 观察asp.net core 端口情况

sudo netstat -lntp

3.8 到此一个带运行时的发布就完成了,测试下是OK的(访问端口:80,由jexus完成端口转发到5000)

四、交流学习

.NET Core & OWIN交流群:199281001

linuxdot.net交流群:102732979

ASP.NET Core "完整发布,自带运行时" 到jexus的更多相关文章

  1. 在Asp.Net Core MVC 3.0 视图运行时编译

    在正常情况下,视图在生成的时候就会变为 xxx.Views.dll,在开发的时候,这样很不方便,因为很多的时候,我们只是修改一个样式,调整一些JavaScript代码,这个时候要把项目调试暂停下来,生 ...

  2. ASP.NET Core 3.x Razor视图运行时刷新实时编译

    前言: 很长一段时间没有写过ASP.NET Core Razor(.cshtml)视图开发WEB页面了,今天刚好把之前做的一个由ASP.NET Core 2.2+Razor开发的项目升级到ASP.NE ...

  3. 将asp.net core站点发布到IIS上遇到的问题

    今天第一次将整个 asp.net core 站点发布到 IIS 上,以前都是发布到 Linux 服务器上. 开始使用 dotnet publish -c release 命令发布,用浏览器访问站点时出 ...

  4. ASP.NET Core 网站在Docker中运行

    Docker作为新一代的虚拟化方式,未来肯定会得到广泛的应用,传统虚拟机的部署方式要保证开发环境.测试环境.UAT环境.生产环境的依赖一致性,需要大量的运维人力,使用Docker我们可以实现一次部署, ...

  5. ASP.NET Core 网站发布到Linux服务器(转)

    出处;ASP.NET Core 网站发布到Linux服务器 长期以来,使用.NET开发的应用只能运行在Windows平台上面,而目前国内蓬勃发展的互联网公司由于成本的考虑,大量使用免费的Linux平台 ...

  6. ASP.NET Core下发布网站图解

    与ASP.NET时代不同,ASP.NET Core不再是由IIS工作进程(w3wp.exe)托管,而是使用自托管Web服务器(Kestrel)运行,IIS则是作为反向代理的角色转发请求到Kestrel ...

  7. ASP.NET Core 2.1 使用Docker运行

    重要提示,本文为 ASP.NET Core 2.1 如果你是 2.2 那么请将文中的镜像换为 microsoft/dotnet:2.2.0-aspnetcore-runtime 即可,其他操作一样 1 ...

  8. ASP.NET Core IIS发布

    ASP.NET Core应用发布到IIS 官网教程地址:https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/publish-to-iis?vi ...

  9. Windows平台部署 Asp.Net Core 3.1.0,将 ASP.NET Core 应用发布到 IIS ,使用 IIS 在 Windows 上托管 ASP.NET Core

    第一部分:本教程介绍如何在 IIS 服务器上托管 ASP.NET Core 应用. 官方文档地址:https://docs.microsoft.com/zh-cn/aspnet/core/tutori ...

随机推荐

  1. H5实现摇一摇技术总结

    摇一摇遇到的问题 一.如何对摇晃效果进行反馈 刚开始的处理方式是,摇晃过程中不做任何处理,但后来反馈说这种效果不好,好像就没有摇动一样,如果声音也不响的话,就真的和什么都没发生一样. 后来想了想,加入 ...

  2. MVVM框架从WPF移植到UWP遇到的问题和解决方法

    MVVM框架从WPF移植到UWP遇到的问题和解决方法 0x00 起因 这几天开始学习UWP了,之前有WPF经验,所以总体感觉还可以,看了一些基础概念和主题,写了几个测试程序,突然想起来了前一段时间在W ...

  3. CENTOS 6.5 平台离线安装 Apache2.4

    一.下载Apache 2.4 http://httpd.apache.org/download.cgi http://mirrors.cnnic.cn/apache//httpd/httpd-2.4. ...

  4. [干货来袭]MSSQL Server on Linux预览版安装教程(先帮大家踩坑)

    前言 昨天晚上微软爸爸开了全国开发者大会,会上的内容,我就不多说了,园子里面很多.. 我们唐总裁在今年曾今透漏过SQL Server love Linux,果不其然,这次开发者大会上就推出了MSSQL ...

  5. 灵魂宝石 bzoj 2663

    灵魂宝石(1s 128MB)soulgem [问题描述] "作为你们本体的灵魂,为了能够更好的运用魔法,被赋予了既小巧又安全的外形" 我们知道,魔法少女的生命被存放于一个称为灵魂宝 ...

  6. iosselect:一个js picker项目,在H5中实现IOS的select下拉框效果

    具体文档和demo可以访问github:https://github.com/zhoushengmufc/iosselect 移动端浏览器对于select的展示样式是不一致的,ios下是类似原生的pi ...

  7. SNMP简单网络管理协议

    声明:以下内容是学习谌玺老师视频整理出来(http://edu.51cto.com/course/course_id-861.html) SNMP(Simple Network Management ...

  8. Linux自动共享USB设备:udev+Samba

    一.概述 公司最近要我实现USB设备插入Ubuntu后,自动共享到网络上,能像Windows共享一样(如\\192.168.1.10)访问里面的内容,不需要写入权限.当时听完这需求,我这新人表示惊呆了 ...

  9. WebAPI 2参数绑定方法

    简单类型参数 Example 1: Sending a simple parameter in the Url [RoutePrefix("api/values")] public ...

  10. 非阻塞/异步(epoll) openssl

    前段时间在自己的异步网络框架handy中添加openssl的支持,当时在网络上搜索了半天也没有找到很好的例子,后来自己慢慢的摸索,耗费不少时间,终于搞定.因此把相关的资料整理一下,并给出简单的例子,让 ...