webdeploy 使用总结(一)

软件介绍

 

MicrosoftWebDeploy—一个采用全面的发布和部署机制的免费服务器技术。

WebDeploy不仅仅让你发布文件—还可以部署数据库结构/数据,运行变更的数据库脚本,设置安全访问控制列表等等。所有这些部署步骤都可以用VisualStudio自动完成。

Web部署工具可简化IISWeb服务器、Web应用程序和网站的迁移、管理和部署工作。管理员可以通过命令行脚本运行Web部署工具,

同步IIS6.0和IIS7.0服务器或将IIS6.0服务器迁移到IIS7.0。利用Web部署工具,管理员和委派的用户还可使用IIS管理器将ASP.NET和PHP应用程序部署到IIS7.0服务器。

Web Deploy特点

(1) 在IIS6.0和IIS7.0之间轻松迁移Web应用程序

     通过在过程开始前确定不兼容性和预览建议的更改,简化IIS6.0到IIS7.0的迁移规划。通过提前了解任何潜在问题,您即可采取正确的措施并简化迁移。

(2) 高效同步服务器场

     利用Web部署工具,通过检测源与目标内容之间的差异并仅传输那些需要同步的更改,可以在IIS7.0服务器场中高效同步网站、应用程序或服务器。

该工具通过自动确定要同步的特定网站的配置、内容、数据库和证书,简化同步过程。除了默认行为,您还可以选择为同步指定其他提供程序,包括COM、GAC和注册表设置。


(3) 更轻松地打包、存档和部署Web应用程序


  Web部署工具使您能够打包已安装的Web应用程序的配置和内容(包括SQL数据库),并使用包进行存储或重新部署。可以使用IIS管理器部署这些包,而且无需管理员特权。

该工具也集成到VisualStudio2010,帮助开发人员简化将Web应用程序部署到Web服务器的工作。

前提准备

  完整安装Microsoft Web Deploy 3 下载页面:WebDeploy_amd64_zh-CN.msi

msdeploy 同步站点

   命令所在目录C:Program FilesIISMicrosoft Web Deploy V3>

msdeploy配置backup信息

查看backup配置信息 

 命令:.msdeploy.exe -verb:dump -source:backupSettings=iis站点的名字 -xml

返回信息如:

配置backup信息

(1) 以管理员身份打开powershell,进入路径%programfiles%IISMicrosoft Web Deploy V3scripts

(2) 加载BackupScripts.ps1(加载ps脚本,使用. .BackupScripts.ps1

(3) 根据需要执行以下命令

. .BackupScripts.ps1
TurnOn-Backups -On $true
Configure-Backups -Enabled $true
Configure-Backups -BackupPath "{SitePathParent}snapshots{siteName}"
Configure-Backups -ContinueSyncOnBackupFailure $false
Configure-Backups -NumberOfBackups 10
pause

执行后

注:

完整安装Microsoft Web Deploy 3后,在指定目录并未发现BackupScripts.ps1文件?

windows 系统角色与功能未启用iis的管理工具-管理服务,开启后重新安装Web Deploy即可

 

 

查看Test的msdeploy配置(Test是iis的节点名称)

执行命令:.msdeploy.exe -verb:dump -source:backupSettings=Test -xml

手动备份

查看Test的msdeploy备份

执行命令:  .msdeploy.exe -verb:dump -source:backupManager=test

 

还原指定版本

执行命令:   .msdeploy.exe -verb:sync -source:backupManager -dest:backupManager=Test/msdeploy_2020_12_20_03_22_04.zip

用VS发布时, 注意是否已启用备份

 

msdeploy公共设置

公共设置(可用于所有提供程序)

  • computerName=<名称> 远程计算机的名称或代理 URL
  • wmsvc=<名称> 用于 Web 管理服务(WMSvc)的远程计算机的名称或代理 URL。假设服务正在侦听端口8172。
  • authtype=<名称> 要使用的身份验证方案。默认设置为“NTLM”。如果指定了wmsvc选项,则默认设置为“基本”。
  • userName=<名称> 远程连接时用于身份验证的用户名(如果使用“基本”身份验证,则为必填项)。
  • password=<密码> 用于远程连接的用户密码(如果使用“基本”身份验证,则为必填项)。
  • storeCredentials=<目标> 用户名和密码将存储在 Windows 凭据管理器中的目标标识符下。
  • getCredentials=<目标> 目标标识在连接到远程计算机时要使用的 Windows凭据管理器中的凭据(用户名和密码)。
  • encryptPassword=<密码> 用于加密/解密任何安全数据的密码。
  • includeAcls=<布尔值> 如果为 True,则在操作中包括 ACL (适用于文件系统、注册表和元数据库)。
  • tempAgent=<布尔值> 在远程操作期间,暂时安装远程代理。
  • publishSettings=<文件路径> 包含远程连接信息的发布设置文件的文件路径。

 

原文地址:https://www.cnblogs.com/for917157ever/p/14163284.html