我正在使用Jenkins配置CI构建服务器。在构建步骤之后,我想部署网站。
从Web Deploy发布的VisualStudio发布网站时。我喜欢这种方法,因为它实际上发布了那些已经改变的文件,因此部署非常快。
现在在构建服务器上我尝试做同样的事情:构建应用程序(使用MSBuild.exe
),然后部署应用程序(使用MSDeploy.exe
?)。
我已经看到他们使用MSBuild.exe
部署应用程序的帖子和使用MSDeploy.exe
的其他人的帖子,那里有显着差异吗?
你有什么建议可以帮助解决这个问题吗?
谢谢并提前。
答案 0 :(得分:14)
使用MSBuild创建MSDeploy包,然后使用MSDeploy.exe将该包部署到任何环境。此链接可帮助您更好地了解WebDeploy / MSDeploy的工作原理。
http://dotnetcatch.com/2016/02/25/the-anatomy-of-a-webdeploy-package/
真的很酷,您也可以使用MSDeploy来部署数据库和非Web应用程序。我们使用这种方法完全自动部署了50多种产品。
http://dotnetcatch.com/2016/02/10/deploying-a-database-project-with-msdeploy/
http://dotnetcatch.com/2016/03/18/deploy-non-web-apps-with-msdeploy/
更新 - 使用MSDeploy软件包的基本步骤:
/t:Package
arg添加到MSBuild调用bin
目录存储到工件仓库调用MSDeploy.exe将程序包部署到目标服务器。这里有很多选择但是 基本命令如下:
“c:\ Program Files(x86)\ IIS \ Microsoft Web Deploy V3 \ msdeploy.exe”-verb:sync -source:package = mypackage.zip -dest:auto,computerName = localhost
答案 1 :(得分:0)
使用当前的Visual Studio和dotnet更加容易,在Visual Studio中创建发布配置文件,然后在CI服务器上使用dotnet:
dotnet publish /p:PublishProfile=PROFILE-NAME /p:Password=*****