通过TeamCity实现ASP.NET Core Web Application的自动编译及发布

下载

  1. TeamCity,当前版本:2017.1
  2. TeamCity插件:.NET Core Support
  3. .NET Core SDK,当前版本:1.0.1

安装

安装TeamCity。需要注意的地方:

  1. 安装路径
  2. 端口,这里是9080
  3. 安装Server和Agent Windows 服务的账号(这里建议使用系统账号而不是用户账号)

安装完成后会自动打开TeamCity的页面,开始初始化配置。数据目录,数据库和管理用用户。

安装TeamCity插件:.NET Core Support。

安装插件有两种方式,详细内容可以参考《Installing Additional Plugins》。这里简单介绍一下文件拷贝的方式。

  1. 找到插件文件夹,这里是:C:\ProgramData\JetBrains\TeamCity\plugins
  2. 将下载好的插件文件(dotnet-core-plugin.zip)拷贝进去,注意不要修改文件名。
  3. 重启TeamCity服务,刷新TeamCity页面,此时TeamCity会自动安装插件。
  4. 插件安装完成后可以到Administration->Plugins List页面中查看插件是否被正确安装。

安装.NET Core SDK。

配置

接下来要通过配置TeamCity,完成将Web Application自动编译、发布的流程。

  1. 创建Project。Administration->Projects->Create Project
  2. 按照实际情况,配置VCS。
  3. 创建项目。
  4. 因为安装了.net core的TeamCity插件,所以几个关键的build过程会被自动检查出来。这里只需要前两个,也就是restore和publish。
  5. 修改发布。这里只修改了Configuration和Output directory
  6. 保存。到这里最基本的自动发布流程已经完成。已经可以运行。

完善

接下来,我会根据一些实际情况,对TeamCity的配置进行一步完善。

  1. 当asp.net core web application寄宿在IIS中的时候,运行上述的流程可能会出现无法拷贝文件的问题。要解决这个问题有两种方式:

    1. 发布前停止IIS服务,发布完成后启动IIS服务。添加两个命令行Step。

      1. net start w3svc
      2. net stop w3svc
    2. 发布前停止站点,发布后启动站点
      1. "C:\Windows\System32\inetsrv\appcmd" start sites "name"
      2. "C:\Windows\System32\inetsrv\appcmd" stop sites "name"
  2.     
时间: 2024-10-11 13:36:49

通过TeamCity实现ASP.NET Core Web Application的自动编译及发布的相关文章

在 asp.net core \ vs2015 update2 情况况下创建 asp.net core web application 的问题

这段期间, 想要做一些关于dashboard的东西,更为直接地观察数据. 所以找了很多关于做chart的工具, 有需要的可以点击链接,这里是我找到的15个最好的javascript chart library.(有些浏览器不能访问请注意!) ------------------------------------------ 现在是问题: 当我新建一个core application : TestDashboard 当然 是空项目. 下一步是加入引用(staticfiles) 引入完就会报错:

docker中运行ASP.NET Core Web API

在docker中运行ASP.NET Core Web API应用程序 本文是一篇指导快速演练的文章,将介绍在docker中运行一个ASP.NET Core Web API应用程序的基本步骤,在介绍的过程中,也会对docker的使用进行一些简单的描述.对于.NET Core以及docker的基本概念,网上已经有很多文章对其进行介绍了,因此本文不会再详细讲解这些内容.对.NET Core和docker不了解的朋友,建议首先查阅与这些技术相关的文档,然后再阅读本文. 先决条件 要完成本文所介绍的演练任

在docker中运行ASP.NET Core Web API应用程序

本文是一篇指导快速演练的文章,将介绍在docker中运行一个ASP.NET Core Web API应用程序的基本步骤,在介绍的过程中,也会对docker的使用进行一些简单的描述.对于.NET Core以及docker的基本概念,网上已经有很多文章对其进行介绍了,因此本文不会再详细讲解这些内容.对.NET Core和docker不了解的朋友,建议首先查阅与这些技术相关的文档,然后再阅读本文. 先决条件 要完成本文所介绍的演练任务,需要准备以下环境: Visual Studio 2015,或者Vi

在 Azure 上部署 Asp.NET Core Web App

在云计算大行其道的时代,当你要部署一个网站时第一选择肯定是各式各样的云端服务.那么究竟使用什么样的云端服务才能够以最快捷的方式部署一个 ASP.NET Core的网站呢?Azure 的 Web App 服务是个很好的选择. 下面我们会通过 Visual Studio 创建一个 Asp.net Core demo 应用,然后把这个 demo 应用部署到 Azure Web App.通过阅读本文,您将能了解到如何创建 Asp.NET Core 应用程序和如何在Azure上创建 Web App 并部署

Azure 部署 Asp.NET Core Web App

在云计算大行其道的时代,当你在部署一个网站时,第一选择肯定是各式各样的云端服务.那么究竟使用什么样的云端服务才能够以最快捷的方式部署一个 ASP.NET Core 的网站呢?Azure 的 Web App 服务是个很好的选择. 下面我们会通过 Visual Studio 创建一个 Asp.net Core demo 应用,然后把这个 demo 应用部署到 Azure Web App. 通过阅读本文,你将会了解到如何创建 Asp.NET Core 应用程序和如何在 Azure 上创建 Web Ap

Create an ASP.NET Core web app in Visual Studio Code

https://www.microsoft.com/net/core#windowscmd https://download.microsoft.com/download/B/9/F/B9F1AF57-C14A-4670-9973-CDF47209B5BF/dotnet-dev-win-x64.1.0.4.exe 安装包后续应该会更新 https://docs.microsoft.com/en-us/azure/app-service-web/web-sites-create-web-app-u

ASP.NET Core Web API Cassandra CRUD 操作

在本文中,我们将创建一个简单的 Web API 来实现对一个 “todo” 列表的 CRUD 操作,使用 Apache Cassandra 来存储数据,在这里不会创建 UI ,Web API 的测试将使用 Postman 来完成. ASP.NET Core 是 ASP.NET 的重大的重构,ASP.NET Core 是一个全新的开源和跨平台的框架,用于构建如 Web 应用.物联网(IoT)应用和移动后端应用等连接到互联网的基于云的现代应用程序. ASP.NET Core 已经内置了用 MVC 架

使用 Swagger 自动生成 ASP.NET Core Web API 的文档、在线帮助测试文档(ASP.NET Core Web API 自动生成文档)

对于开发人员来说,构建一个消费应用程序时去了解各种各样的 API 是一个巨大的挑战.在你的 Web API 项目中使用 Swagger 的 .NET Core 封装 Swashbuckle 可以帮助你创建良好的文档和帮助页面. Swashbuckle 可以通过修改 Startup.cs 作为一组 NuGet 包方便的加入项目.Swashbuckle 是一个开源项目,为使用 ASP.NET Core MVC 构建的 Web APIs 生成 Swagger 文档.Swagger 是一个机器可读的 R

使用Swagger来生成asp.net core Web API 文档

对于构建一个消费应用程序,理解API的各个方法对开发这是一个不小的挑战.为了使你的API更利于阅读.使用Swagger为你的Web API生成好的文档和帮助页,.NET Core实现了Swashbuckle.AspNetCore,使用Swagger是非常简单的,只需添加一组Nuget包和修改Startup就可以搞定. .Swashbuckle.AspNetCore 开源项目, ASP.NET Core Web API生成Swagger文档的 .Swagger是一个机器可读的restful风格的a