我正在使用Jenkins配置CI构建服务器。在构建步骤之后,我想部署网站。
从Web Deploy发布的VisualStudio发布网站时。我喜欢这种方法,因为它实际上发布了那些已经改变的文件,所以部署非常快。
现在在构建服务器上我正在尝试做同样的事情:构建应用程序(使用 MSBuild.exe
),然后部署应用程序(使用 MSDeploy.exe
?)。
我见过他们使用部署应用程序的帖子 MSBuild.exe
和其他人使用 MSDeploy.exe
那里有显着的差异吗?
你有什么建议可以帮助吗?
谢谢,先进。
使用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
使用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
使用当前的Visual Studio和dotnet更容易,在Visual Studio中创建发布配置文件,然后在CI服务器上使用dotnet:
dotnet publish /p:PublishProfile=PROFILE-NAME /p:Password=*****
https://github.com/aspnet/Docs/blob/master/aspnetcore/host-and-deploy/visual-studio-publish-profiles.md