码迷,mamicode.com
首页 > Web开发 > 详细

ASP.NET Core MVC 在linux上的创建及发布

时间:2016-07-14 22:01:34      阅读:349      评论:0      收藏:0      [点我收藏+]

标签:

前言

ASP.NET core转眼都发布半月多了,社区最近也是非常活跃,虽然最近从事python工作,但也一直对.NET念念不忘,看过了园区大神们搭建的Asp.net core项目之后,自己也是跃跃欲试,准备搞一下ASP.NET Core mvc的创建和部署,于是便有了这篇文章,希望能够帮助到你。

环境准备

技术分享

这是我的开发环境,使用的nginx是nginx 1.6.3 直接yum install,然后需要安装dotnet环境,可以参照官网教程https://www.microsoft.com/net/core#centos

然后使用yeoman创建一个asp.net core 项目 具体见官网https://aspnet-aspnet.readthedocs-hosted.com/en/latest/client-side/yeoman.html,因为我不知道如何通过dotnet指令创建aspnet core mvc项目,只好使用了这个。(后来找到了dotnet new -t web,这个指令也是创建mvc web项目的,可见我当时是多傻)

创建第一个web项目

mkdir demo1

cd demo1

dotnet new -t web

会在demo1目录下生成一个web项目

技术分享

 来看一下project.json

技术分享

技术分享

里面是一些项目依赖和build,publish以及runtime的选择项。可以看到Microsoft.AspNetCore.Server.Kestrel,它是依赖Kestrel来监听web的请求的。

执行dotnet restore 这个指令主要是寻找当前目录下的项目文件(project.json),然后利用NuGet库还原整个项目的依赖库,然后遍历每个目录,生成项目文件,继续还原该项目文件中的依赖项

然后实验一下 dotnet run

技术分享

这里是我修改了他的绑定地址为http://*:5000,因为默认的是localhost:5000,但是在外网访问的时间是会有问题,,查了一下资料说是IP6和IP4的原因,所以使用了*,在Program.cs中使用UseUrls("http://*:5000")

技术分享

然后浏览器访问看一下效果:

技术分享

 

然后我又做了nginxd的反向代理,yum install nginx,然后修改配置文件

技术分享

然后执行 nginx -s reload 重启nginx配置,接着启动ASP.NET CORE 程序,向浏览器输入121.42.184.123,结果如下: 

技术分享

 

 

至此,asp.net core程序在linux上测试成功,可以继续执行dotnet publish指令给程序打包发布,打包之后会生成一个publish文件夹:

技术分享

 

 在浏览器访问结果一样。心情莫名激动,装载大微软。

尝试着用supervisord管理ASPNET CORE项目的进程,但是由于配置问题没搞好,周六抽空研究一下,接下来准备研究一下ASPNET CORE项目的源码。后续学习也会一并写出来,希望和大家一起进步,社区最近的活跃度让我对.NET充满了希望。愿和各位一起加油。

参考资料 :https://aspnet-aspnet.readthedocs-hosted.com/en/latest/client-side/yeoman.html

      https://aspnet-aspnet.readthedocs-hosted.com/en/latest/

.NET学习技术交流群:226704167,愿和各位一起进步!

 

ASP.NET Core MVC 在linux上的创建及发布

标签:

原文地址:http://www.cnblogs.com/lip0121/p/5671431.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!