上一篇使用jenkins配置.net mvc网站进行持续集成一只是简单介绍了jenkins构建站点到本地服务器,这一篇,就来讲解如何部署站点到指定的服务器上面。
1、IIS远程发布配置
1、在服务器管理器中安装“管理服务”(若已存在则无须再安装)
1.1 服务器管理----->角色----->web 服务器IIS
1.2 点击右下角 “添加角色服务”,弹出选择“选择角色服务”对话框。
1.3 选中“管理服务” 点击“下一步”----->点击“安装”。安装完成后,重新打开“服务器管理器”在”Internet 信息服务(IIS)管理器“主界面能看到”管理服务“的图标。
1.4 打开”管理服务“ 主界面,启动远程连接,并设置连接IP地址(服务器IP地址)和端口。然后启动”服务管理“。
1.5 在防火墙的“入站规则”中添加(若已存在设置为启用)服务管理的端口号。
2、安装和配置Web Deploy
Web Deploy 下载地址:http://www.iis.net/downloads/microsoft/web-deploy
2.1下载完成后打开安装包,在下图的选择界面选择”完全安装“。
2.2 安装完成后重新打开”服务器管理器”在”Internet 信息服务(IIS)管理器“主界面右键单击任意一个网站名称,弹出菜单选择“部署”弹出二级菜单。
2.3 在上一步弹出的二级菜单中点击“启用 web deploy 发布” ,弹出“启用 web deploy 发布” 对话框,选择一个系统管理员用户授权(非管理员账户发布可能会有权限问题),设置“指定发布服务器连接的url” 中的IP和端口号
(即为1.4中设置的IP和端口)
2.4 点击“启用 web deploy 发布” 对话框中的 设置 按钮。当结果中显示下图中的文字则设置成功。到此服务器的配置全部搞定,接下来就是去VS2012 中发布了!
3、使用VS2012远程发布网站
3.1 发布对话框设置:“服务URl”就是2.3中“指定发布服务器连接的url” 的url,“网站/应用程序”是IIS上的的启用了“web deploy 发布” 的网站,用户名和密码是2.3中设置的用户账户和密码,选中“允许不受信任的证书(U)”
插曲:在一台服务器(sqlserver 2008 r2)连接的时候总是报如下错误,其它的服务器都OK:
这诡异的问题这条了我好久,我查看了Deploy和Web管理服务都已经正常安装和运行了,后来才发现我安装的Deploy是3.0版本的,要3.5版本才可以。
然后拿着这个配置文件msd_154按照使用jenkins配置.net mvc网站进行持续集成一进行配置,只需要在配置文件那里设置为现在新的msd_154即可。
/t:Rebuild /p:Configuration=Release /p:AllowUntrustedCertificate=True /p:password=Welcome;PublishProfile=msd_154;DeployOnBuild=true;VisualStudioVersion=11.0
此外,我还有个疑问,我想不使用发布配置文件,直接使用MSBuild命令,来进行编辑和发布,命令代码如下:
/t:Rebuild /p:Configuration=Release /p:DeployOnBuild=true /p:MsDeployServiceUrl=https://192.168.2.154:8172/msdeploy.axd /p:DeployIisAppPath=http://192.168.2.154:8020 /p:SkipExtraFilesOnServer=True /p:MSDeployPublishMethod=WMSVC /p:UserName=administrator /p:password=Welcome /p:AllowUntrustedCertificate=True /p:VisualStudioVersion=11.0 /p:ExcludeGeneratedDebugSymbol=false /p:ExcludeXmlAssemblyFiles=false /p:WebPublishMethod=MSDeploy
但是执行构建的结果居然是生成了部署包,百思不得其解,希望有这方面经验的朋友可以提供帮助