在Windows Server 2012中部署Ruby on Rails应用程序

我已经阅读了如何在Windows中部署Ruby on Rails,其中一些关于Windows Server和IIS。 我在我的开发人员电脑中下载了Rubyinstaller及其开发工具包来开发我的应用程序,但是我不知道如何使用Apache来代替embedded式WEBrick服务器。 有人指出,使用乘客gem在性能方面不是一个好主意,但是我发现的post是在2012以前。

我想知道如何在Windows Server 2012和XAMPP (Apache) 的生产服务器上部署RoR应用程序(Rails 4.x,Ruby 2.x ),而不会破坏大多数当前configuration,最好不使用IIS。

我还发现了Ruby Stack的Bitnami安装程序。 我可以自定义安装,取消select已经拥有或者不需要的组件,比如Git,PHP,MySQL等,但是在这个安装程序中安装Apache是​​必须的,那么有没有机会避免打破我目前的安装Apache的configuration(由另一个Bitnami XAMPP安装程序安装)? 我已经有了一个我不想破坏的Apache / PHP安装。

根据您的要求,我会运行Azure / Windows服务器上的Docker应用程序。

或者试试美洲狮,使用这个Windows安装教程https://github.com/hicknhack-software/rails-disco/wiki/Installing-puma-on-windows

理想情况下,您只需使用Docker并在Linux容器中运行应用程序,以避免所有潜在的问题。 但是,由于Windows server 2012缺少对容器的本地支持,我不认为你可以让Docker直接在这个Windows服务器上运行。

所以,我建议在其间添加一个额外的层 – 部署一个安装了Docker的Linux VM,并在其中包含一个包含您的应用程序的Docker镜像到Windows服务器。

我认为合适的方法是在IIS中托管你的应用程序。 唯一的问题是IIS没有原生的方式来托管Rails应用程序。 选项1 – 我们在使用Mongrel的现有IIS Web基础架构上使用Rails: http : //www.napcsweb.com/howto/rails/deployment/railsonIISWithMongrel.pdf

要么

选项2使用Mongrel没有IIS像这样:

  1. 安装rails和mongrel gem install rails –include-dependencies gem install mongrel –include-dependencies

  2. 服务rails应用程序

rails appruby server 0e production -p 4001检查你可以认可的网站按ctrl-c退出

  1. 安装Mongrel作为服务

mongrel_rails_service install –n rails_app –p 4001

从services.msc启动rails_app服务

从原始的rails文档中,你可以有更多的选择来生产你的ruby应用程序: http : //weblog.rubyonrails.org/2006/5/11/deploying-rails-on-windows-servers/