【问题标题】:Is there a solution for deploying IIS websites that's similar to Capistrano?有没有类似于 Capistrano 的部署 IIS 网站的解决方案?
【发布时间】:2010-09-18 22:11:49
【问题描述】:

Capistrano 是构建自动部署网站和/或数据库的脚本的绝佳解决方案。但是,它也非常以 *nix 为中心,从我的阅读来看,让它与 Windows 服务器一起工作可能会比让它工作更麻烦。是否有类似的解决方案可以让我将 ASP.Net 网站部署到 IIS 服务器和 SQL Server 数据库?

我正在寻找的是能够提供与 Capistrano 相同的灵活性的东西,至于自定义我希望如何部署网站、我想从哪个版本控制系统中提取、它将如何处理回滚到以前版本的站点等。到目前为止,我还没有找到具有与 Capistrano 具有相同功能的免费解决方案。

【问题讨论】:

标签: asp.net sql-server iis deployment


【解决方案1】:

我已经将 Capistrano 与 ASP.NET 和 IIS 一起使用。为了让它工作,我在目标机器上安装了 Cygwin,并修改了 Capistrano 以在释放或回滚时在 IIS 中拆除和设置虚拟目录。

作为奖励,我还让 Capistrano 重命名配置文件,具体取决于它部署到的机器,因此我们可以自动正确地建立数据库连接。

【讨论】:

【解决方案2】:

我们使用由 Setup Factory 创建的 msi 文件。它几乎可以让您放置所需的任何设置参数。我们也在考虑使用 AntHill Pro,它可能更符合您的需求,但要花很多钱。

IIS 中的所有内容都可以通过 vb 脚本进行修改。至于走可能是最便宜的免费路线。我相信您可以将它与批处理文件和一些自定义编程结合使用,您可以将所需的任何内容部署到 iis 和 sql server。

【讨论】:

  • 安装工厂几乎可以让您在安装网站时进行配置和执行任何您需要做的事情。
【解决方案3】:

我不知道有像 Capistrano 这么多功能的东西,但有一个很好的老 nant

【讨论】:

    【解决方案4】:

    它绝对不是像 Capistrano 那样的完整工具,但powershell 将为您提供编写脚本等的能力。您只需要自己编写部署片段即可。

    【讨论】:

      【解决方案5】:

      不完全是您正在寻找的东西,但 HudsonMSBuildwebdeploy(又名 MSDeploy)相结合,除了提供持续集成外,还可以满足您的需求。这就是我要走的路。我希望 Hudson 通过 MSDeploy 创建包,这些包在本地保存并在构建成功时推送到登台服务器。然后再想办法一键将包推送到生产环境。

      更新:事实证明这相当容易。我没有构建包,而是让 msdeploy 将成功的构建推送到开发服务器。然后可以创建一个单独的任务,让 msdeploy 从开发推送到生产(或中间登台服务器)。

      【讨论】:

      • 附注:嗨,马特!有趣的是,我们俩最终是如何寻找这些信息的。令人失望的是,这个巨大的漏洞仍然存在,但我希望持续集成提供了一种不同的方式来做到这一点,并且它会带来其他好处。
      猜你喜欢
      • 2015-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-25
      • 2013-01-26
      • 2019-05-29
      • 1970-01-01
      相关资源
      最近更新 更多