2017-04-25 126 views
5

我在理解如何使用TeamCity上的Webdeploy將ASP.NET Core應用程序發佈到服務器時遇到了一些麻煩。如何使用TeamCity使用WebDeploy部署ASP.NET Core應用程序?

我已經安裝了DOTNET核心TeamCity的插件,並有兩個構建步驟:

  • DOTNET恢復(作爲一個命令行一步,建於上的NuGet步timesout)

  • DOTNET發佈SRC/PROJECTNAME/projectName.csproj

但是我很困惑,以什麼爲第三步,這是發佈的結果做210到我們的服務器。

傳統上我們會使用MSBuild並定位發佈配置文件,但是我不確定.NET內核是否使用MSBuild。

我有一個發佈配置文件作爲我的解決方案的一部分,它可以在VS2017中成功運行。我查看了TeamCity博客,該博客討論瞭如何設置TeamCity來使用.NET Core,雖然它提到了WebDeploy,但它只是簡單地提到它可以與dotnet publish並用,而沒有真正解釋如何。

+0

有你有機會通過TeamCity的人員閱讀這篇博客https://blog.jetbrains.com/teamcity/2016/11/teamcity-dotnet-core/ 也有此HTTPS ://medium.com/monkii/how-to-deploy-asp-net-core-sites-using-teamcity-or-just-command-line-cf05fdee58f5文章詳細介紹。 –

回答

0

但是我很困惑第三步要做什麼,也就是將dotnet發佈的結果發佈到我們的服務器。

傳統上,我們會使用的MSBuild和目標發佈配置文件,但我不能確定.NET的核心是否利用的MSBuild。

我也發現了自動化.NET核心部署缺少文檔。通常對於部署到IIS,您有兩個選項。

您仍然可以使用的MSBuild與/p:DeployOnBuild=true部署.pubxml發佈在Visual Studio中創建的配置文件與.NET框架的網站。在dotnet恢復之後運行MSBuild,而不是dotnet發佈。

或者你也可以使用DOTNET發佈發佈到一個文件夾,並msdeploy.exe到該文件夾​​同步到一個IIS站點,可能是在遠程機器上。典型:

msdeploy.exe -verb:sync -source:contentPath="<the folder published to by dotnet publish>" -dest:contentPath=<Your IIS Site>