.NET Core在安装(VS2015)与部署

.NET Core开发环境搭建

使用VS2015开发.NET Core项目,环境的搭建可以参考官网,大致安装步骤如下:

1、首先你得装个vs2015 并且保证已经升级至 update3及以上,下载链接:

ed2k://|file|cn_visual_studio_enterprise_2015_with_update_3_x86_x64_dvd_8923298.iso|7787208704|A1C1D2AFBC09D8778C92CF19DEC8F4F4|/      

2、vs安装完成之后 先安装 .net core sdk,下载链接:      

https://download.microsoft.com/download/A/3/8/A38489F3-9777-41DD-83F8-2CBDFAB2520C/packages/DotNetCore.1.0.0-SDK.Preview2-x64.exe

3、sdk安装完成之后 安装vs2015 tool,注意安装会卡很久,下载链接:

https://download.microsoft.com/download/2/F/8/2F864C4E-6980-4AFC-B64E-0AC04837FD6C/DotNetCore.1.0.0-VS2015Tools.Preview2.0.1.exe       

VS2015开发的.NET Core程序部署和发布

部署方式

.NET Core可以跨平台运行,.NET Core程序部署分为2种方式,这里主要记录Portable applications的部署方式。

1、Portable applications(便携应用)  

    这个类似于现有的.NET Framework方式,需要目标主机安装有.NET Core的运行时,对比现在的情况就是需要机器安装.NET Framework。对于这种方式我想大家都很熟悉了,微软有放出不同平台(操作系统)上的.NET Core运行时。

2、Self-contained application(自宿主应用)

  这种方式会将运行时与程序共同打包,也就意味着目标机器不需要装.NET Core运行时。

发布方式

.NET Core发布Web程序的方式也有2种,采用VS2015发布程序和使用(CLI)命令行发布。采用VS2015发布很简单,右键发布程序即可,采用CLI命令发布的方式就有点复杂,这里做简单讲解。

通过CMD命令进入程序目录的时候,运行dotnet publish ,如果结果提" No executable found matching command "bower" ”,这个时候就要手动安装npm命令,安装的方式如下:

1、需要安装Node.js,下载地址(https://nodejs.org/en/download/)。

2、手动执行npm安装指令。(必须现安装Node.js,然后Cmd执行下面命令,可以参考资料

    npm install -g bower
    npm install -g gulp

3、再次CMD进入代码根目录,执行dotnet publish ,执行成功之后,会在“ bin/Debug/netcoreapp1.0/publish/ ”目录下有发布成功的Web项目;

4、再次进入发布后的文件根目录“ bin/Debug/netcoreapp1.0/publish/ ” ,执行dotnet **.dll(生成web的dll文件名称),即可看到执行成功,通过浏览器即可访问站点 http://localhost:5000(记得安装npm指令

  [root@VMBService WebSite]# dotnet ShopMangr.dll 
  Hosting environment: Production
  Content root path: /root/netCode/codeweb/WebSite
  Now listening on: http://localhost:5000
  Application started. Press Ctrl+C to shut down.

跨平台发布Linux

将vs2015发布后的程序部署到Linx系统中。这里主要记录将VS2015发布后的程序部署到CentOS7上。

1、使用工具:

  远程和传输文件:Xshel、Xftp 

  代理转发:nginx

2、发布遇到问题与解决汇总:

  1>、将发布后的文件,拷贝到CentOS上之后,运行dotnet ShopMangr.dll时候,提示 The specified framework 'Microsoft.NETCore.App', version '1.0.1' was not found  后查询是因为CentOS按照.NET Core时候,只是安装了V1.1的版本,并没有V1.0.1的版本,需要重新下载.NET Code 1.0.1版本放到服务器上即可,具体解决方式可参考hobinly的方案(http://www.cnblogs.com/hobinly/p/6169165.html)

  2>、CentOS7中安装和配置了Nginx,仍然不能访问.NET Core项目的处理方式,可以查看CentOS7中,Nginx的转发搭建

参考博客

1、bower和gulp的安装(http://www.cnblogs.com/straw/p/5474517.html)

2、CentOS7中,提示.NET Core 1.0.1 Not Find解决方案(http://www.cnblogs.com/hobinly/p/6169165.html)

3、CentOS7中,Nginx的转发搭建(http://www.cnblogs.com/ants/p/5732337.html)

4、拥抱.NET Core,如何开发跨平台的应用并部署至Ubuntu运行(http://www.cnblogs.com/ants/p/5659123.html)

原文地址:https://www.cnblogs.com/xibei666/p/6368824.html