加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 使用Rake创建IIS网站

发布时间:2020-12-16 07:10:37 所属栏目:asp.Net 来源:网络整理
导读:我正在使用rake和albacore来构建我的.net ASP MVC项目,但是到目前为止我无法实现自动化的一部分是将构建的项目部署到IIS.目前在开发人员机器上,我让开发人员手动创建网站并将它们链接到构建生成的已发布输出文件夹. 但是现在我们有了CI框设置(Teamcity),我需
我正在使用rake和albacore来构建我的.net ASP MVC项目,但是到目前为止我无法实现自动化的一部分是将构建的项目部署到IIS.目前在开发人员机器上,我让开发人员手动创建网站并将它们链接到构建生成的已发布输出文件夹.

但是现在我们有了CI框设置(Teamcity),我需要自动将网站设置为IIS,那么有没有可以在IIS上创建网站的rake任务?我记得有一段时间回来看但却找不到它.

我可以安装IIS 6元脚本的东西(不能记住它的确切名称)和任何其他iis插件,该框目前运行IIS 7.5.

==编辑==

我记得有一段时间回来的是InetMgr(https://github.com/typesafe/inetmgr),它似乎有点不稳定,对我不起作用,但似乎不再支持.

解决方法

不是最好的答案,但由于我找不到比下面提出的方法更简单的东西,我只是用appcmd写了一些东西:

def create_web_site(site_name,site_location,site_port)
  delete_command = "#{$file["appcmd"]} delete site #{site_name}"
  result = system delete_command
  puts "Failed to delete site on IIS: #{$?}" unless result

  add_command = "#{$file["appcmd"]} add site /name:#{site_name} /bindings:http/*:#{site_port}: /physicalPath:#{site_location}"
  result = system add_command
  raise "Failed to add site on IIS: #{$?}" unless result

  set_app_pool_command = "#{$file["appcmd"]} set app #{site_name}/ /applicationPool:"ASP.NET v4.0""
  result = system set_app_pool_command
  raise "Failed to bind site to .net 4 app pool on IIS: #{$?}" unless result

  start_site_command = "#{$file["appcmd"]} start site #{site_name}"
  result = system start_site_command
  raise "Failed to start site on IIS: #{$?}" unless result
end

上面的$file [“appcmd”]是我的构建脚本的全局文件查找,这是c:/ windows / system32 / inetsrv.

我很乐意找到一个更好的解决方案,所以如果有人遇到更好的方法,这样就添加答案,如果有更好的话,我会改变正确的答案.我发现只有2个用于执行此操作的库是dolphin部署和7个数字的iis rake脚本,但不幸的是,它们都没有详细记录如何使用.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读