.net core 学习日记一:.net core 在windows 的多种部署方式

以前一直很懒,没写过学习日记,也没好好钻研新技术,最近才开始研究.net core ,那就正好从零开始,总结一下学习过程吧。

这篇主要是学习如何在windows 下部署 .net core

项目开发环境 vs 2017 .net core 2.1,计算机环境 windows 10

首先新建一个asp.net core web api 程序 ,里面已经自带控制器 valuescontroller,稍后用于测试,项目输出类型为控制台应用程序(默认)

 

第一种方式:控制台运行

  打开cmd ,路径定位到项目根目录文件夹,运行dotnet run

  

  如果端口冲突,可在launchSettings.json 修改对应端口。

  运行后会自动监听对应端口,直接访问http://127.0.0.1:5002/api/values 即可调取接口

 

第二种方式:IIS部署

  发布到文件夹bin\Debug\netcoreapp2.1\publish\

1. 新建IIS站点

  端口为9011,程序池设置CLR版本为无托管代码

  

 

2. 安装 .NET Core Windows Server 托管捆绑包

  此时访问接口 依然报错,网上查询,还需要安装.NET Core Windows Server 托管捆绑包 

  如果想监听日志,在发布文件夹下新建logs文件夹,然后修改web.config 设置stdoutLogEnabled="true"

  此时访问http://127.0.0.1:9011/api/values ,成功调取接口

 

第三种方式:WINDOWS服务

  微软有提供 如何在windows服务托管asp.net core ,不过步骤比较麻烦,还需要改源码,网上找到一种方法 使用NSSM把.Net Core部署至windows服务

  简单说一下步骤

1. 下载nssm:http://www.nssm.cc/download

2. 运行cmd,定位到nssm.exe文件路径,运行nssm install

3. 在弹出的窗口配置:    

  Path:dotnet所在的目录,一般默认是在C:\Program Files\dotnet\dotnet.exe;

  Startup directory:程序所在的目录,就是最后程序dll所在的目录;

  Arguments:程序dll的名称,一般是项目名加上.dll;

  Service name:在此写上服务的名称即可。

  最后点击install service 完成windows服务安装。

  在windows服务找到对应服务名,启动,然后根据launchSettings.json配置的端口访问,即可调取接口。

  

 

posted @ 2018-08-05 15:20  redo  阅读(3125)  评论(0编辑  收藏  举报