2017-04-25 3 views
5

Ich habe Probleme zu verstehen, wie eine ASP.NET Core-Anwendung mit Webdeploy auf TeamCity auf einem Server veröffentlicht wird.Wie wird eine ASP.NET Core App mit WebDeploy mithilfe von TeamCity bereitgestellt?

Ich habe das Dotnet Kern Teamcity-Plugin installiert und haben zwei Build-Schritte:

  • Dotnet (als Kommandozeilen-Schritt, der eingebaute in Schritt timesout auf nuget) wiederherstellen

  • Dotnet veröffentlichen src/Projektname/projectName.csproj

aber ich bin verwirrt, was für den dritten Schritt zu tun, die das Ergebnis derzu veröffentlichen ist 210 zu unserem Server.

Traditionell verwenden wir MSBuild und zielen auf ein Veröffentlichungsprofil. Ich bin mir jedoch nicht sicher, ob .NET Core MSBuild verwendet.

Ich habe ein Veröffentlichungsprofil als Teil meiner Lösung, die erfolgreich in VS2017 funktioniert. Ich habe einen Blick auf den TeamCity-Blog geworfen, der über die Einrichtung von TeamCity für die Verwendung von .NET Core berichtet, und obwohl WebDeploy erwähnt wird, wird nur erwähnt, dass es neben dotnet publish verwendet werden kann, ohne wirklich zu erklären, wie.

+0

Haben Sie eine Chance hatte, dieses Blog-Post von Teamcity Personal zu lesen https://blog.jetbrains.com/teamcity/2016/11/teamcity-dotnet-core/ gibt es auch diese https : //medium.com/monkii/how-to-deploy-asp-net-core-sites-using-teamcity-or-just-command-line-cf05fdee58f5 Beitrag, der ins Detail geht. –

Antwort

0

Allerdings bin ich verwirrt, was zu tun ist für den dritten Schritt, nämlich das Ergebnis von dotnet publish auf unserem Server zu veröffentlichen.

Traditionell verwenden wir MSBuild und zielen auf ein Veröffentlichungsprofil. Ich bin mir jedoch nicht sicher, ob .NET Core MSBuild verwendet.

Ich habe auch festgestellt, Dokumentation auf automatisierten .NET Core-Einsatz fehlt. Im Allgemeinen haben Sie für die Bereitstellung in IIS zwei Optionen.

Sie können MSBuild mit /p:DeployOnBuild=true weiterhin verwenden, um ein Veröffentlichungsprofil .pubxml bereitzustellen, das in Visual Studio wie mit .NET Framework-Websites erstellt wurde. Führen Sie MSBuild nach Dotnet Restore und anstelle von Dotnet veröffentlichen.

Oder Sie können auch dotnet publish verwenden, um in einem Ordner zu veröffentlichen, und msdeploy.exe, um diesen Ordner mit einer IIS-Site zu synchronisieren, möglicherweise auf einem Remote-Computer. Typisch:

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