关于如何在Linux中添加ASP.NET Core运行时环境请参考我的上一篇文章,本文章将不再做赘述。

本文章运行环境如下:
 

(1) 安装独立版Jexus

本教程安装的是独立版的Jexus,独立版的Jexus自带Mono,使用的是Mono的稳定版本4.8。安装 Jexus 直接使用一下命令即可(需要在root身份下执行):

curl https://jexus.org/release/x64/install.sh|sh

安装成功后会提示:OK, Jexus has been installed in /usr/jexus.

(2)创建一个ASP.NET Core应用

我们按照微软官方的ASP.NET Core文档新建一个ASP.NET Core MVC应用,输入如下命令

 
cd /home                      //定位到home目录  
 
dotnet new mvc -o aspnetcoreapp              // 在当前目录下创建一个MVC Web应用
 
cd aspnetcoreapp                    //定位到aspnetcoreapp目录
 
dotnet run               //运行应用

注意:此处可能会抛出Warn:“Unable to bind to http://localhost:5000 on the IPv6 loopback interface: 'Error -99 EADDRNOTAVAIL address not available'”。微软的解决方案:https://github.com/aspnet/KestrelHttpServer/issues/2117
        我尝试使用     ASPNETCORE_URLS="http://*:5000" dotnet run         替代    dotnet run     命令在特定的情况下可以解决此类问题

完美解决方案:在Program.cs类 BuildWebHost方法中 添加指定的端口


            
然后执行 dotnet run 命令即可完美解决此问题。

(3)生成ASP.NET Core部署文件

我们将部署文件存放在 /var/www/aspnetcore 目录下

命令如下:

mkdir -p /var/www/aspnetcore                 //新建目录

cd /home/aspnetcoreapp/     //定位到项目工程下

dotnet publish -o /var/www/aspnetcore      //将项目工程发布在指定目录下

发布后目录结构如下:

因为这是一个空的项目工程,所以我们将项目工程中的视图部分复制到部署目录中

我们来测试一下,部署工程是否运行正常

执行如下命令

dotnet /var/www/aspnetcore/aspnetcoreapp.dll

测试正常,至此,我们已完成部署结构,稍后我们将在Jexus上部署运行此工程。

(4)在Jexus 上部署 ASP.NET Core项目工程

Jexus 中 一个配置文件对应一个网站,因为我们需要新建一个ASP.NET Core网站的配置文件

运行如下命令:

cd /usr/jexus/siteconf            //定位到Jexus网站配置文件目录

cp default aspnetcore    //复制Jexus 提供的默认配置模版(这年头谁手写?)

vi aspnetcore    //打开我们新建的网站配置文件,然后修改如下内容(这是命令行修改,比较麻烦,忍忍就好了)

OK,我们已经完成了ASP.NET Core网站的配置文件,下一步让我们把配置文件的默认模板干掉把

rm -rf /usr/jexus/siteconf/default      //干掉默认的配置模板

然后,让我们启动Jexus,看一下效果

如果你的Jexus已经启动,运行如下命令

sh /usr/jexus/jws restart        //重启Jexus

如果你的Jexus是停止状态,运行如下命令

sh /usr/jexus/jws start        //启动Jexus

附赠送停止命令

sh /usr/jexus/jws stop       //停止Jexus

让我们看一下效果吧.

在Linux环境下使用Jexus部署ASP.NET Core的更多相关文章

  1. 在Linux环境下使用Apache部署ASP.NET Core

    在前几篇文章中我们一起探讨了如何在Linux环境中安装ASP.NET Core运行时环境及将ASP.NET Core项目部署在Jexus中,这篇文章中我们将探讨如何将ASP.NET Core部署于Ap ...

  2. ubuntu16.4下用jexus部署asp.net core rtm

    上篇文章介绍了下用vs发布部署到iis环境,今天说下ubuntu 下部署asp.net core,不需要安装.net core sdk,自带运行时方式部署,利用jexus服务器转发请求到asp.net ...

  3. Jexus部署Asp.Net Core项目

    在之前的我的博客项目中,我将.net Core发布到Cent OS 上,使用的Nginx代理以及Supervisor进程守护,看过我的博客的童鞋,也会发现,这种方式比较麻烦,光命令行就看的头大,总共部 ...

  4. Centos下使用Docker部署asp.net core项目

    本文讲述 CentOS 系统 Docker 中部署 asp.net core开源项目 abp 的过程 步骤 1. 拉取 asp.net core 基础镜像 docker pull microsoft/ ...

  5. Linux环境下详细讲解部署MySQL5.7版本

    说明: 在本人写作这篇安装MySQL文章时,虽然MySQL已经发布到8.0.17版本,但对于行业来说,主力版本依然是5.7版本.目前在Linux环境默认安装时,大部分已经默认安装到8版本了,所以本人特 ...

  6. centos 7 下使用jexus 配置ASP.NET Core

    1.安装jexus Jexus独立版(专业版)的安装 Jexus“独立版”指的是自带.net运行时(mono),不需要在客户服务器安装mono就能正常运行的Jexus版本,该版本只支持 64位Linu ...

  7. LINUX 下Jexus部署ASP.NET Core WebApi

    服务器:LINUX  ubuntu16.04  开发软件:VS2015 Update3   dotnet sdk: DotNetCore.1.0.0-VS2015Tools.Preview2   1. ...

  8. linux系统下基于mono部署asp.net,使用ef6与mysql出现的问题【索引】

    git clone github.com/mono的源码,日期:2014-06-19,百度网盘链接:http://pan.baidu.com/s/1kTG9EUb 关于asp.net利用mono部署到 ...

  9. linux 环境下tomcat中部署jfinal项目

    tomcat中部署jfinal项目 问题现象如下图 问题描述: 我在自己的windows7系统上tomcat下面跑这个项目没有任何问题吗,但是当我把项目上传到linux服务器上的tomcatwebap ...

随机推荐

  1. PHP 连接 Memcached 服务

    1.需要安装php的Memcached扩展,具体安装步骤不做介绍了. 2.php连接memcached的mem.php 文件 <?php $memcache = new Memcached; $ ...

  2. Java Web之HTML5

    终于学到Java Web这一章节了,首先来了解一下HTML5的一些新知识点吧,我直接贴出HTML5代码看一下: <!DOCTYPE html> <html lang="en ...

  3. Jquery Pagination分页插件使用

    JqueryPagination是个简单轻量级的分页插件,使用起来很容易,只要初始化一个实例,并设置总数量.翻页回调函数.其它参数就可以实现无刷新分页功能了. 准备工作 下载jquery.min.js ...

  4. JDBC-DbUtils

    依赖 pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns=" ...

  5. ubuntu14.04 mysql数据库允许远程访问设置

    安装mysql5.5 sudo apt-get install mysql-server-5.5 --------------------------------------------------- ...

  6. Vue项目搭建

    1.环境搭建 安装node 官网下载安装包,傻瓜式安装:https://nodejs.org/zh-cn/ 安装cnpm npm install -g cnpm --registry=https:// ...

  7. 浏览器内核 Trident Gecko Presto Webkit

    Trident内核:IE,MaxThon,TT,The World,360,搜狗浏览器等 Gecko内核:Netscape6及以上版本,FF,MozillaSuite/SeaMonkey等 Prest ...

  8. springBoot中实现自定义属性配置、实现异步调用、多环境配置

    springBoot中其他相关: 1:springBoot中自定义参数: 1-1.自定义属性配置: 在application.properties中除了可以修改默认配置,我们还可以在这配置自定义的属性 ...

  9. 查看swap占用情况

    查看swap被占用的情况 #!/bin/bash # Get current swap usage for all running processes # Erik Ljungstrom 27/05/ ...

  10. js 数组拷贝与深拷贝

    1.对于普通数组(数组元素为数字或者字符串) var _testCopy = [1,2,3].concat();//拷贝数组(浅拷贝) 2.对于对象数组 (深拷贝) //形如var _objArr=[ ...