RoR部署 - 开发Windows / Productiv Linux可能吗?

时间:2013-05-05 08:54:00

标签: linux windows deployment ruby-on-rails-3.2 capistrano

我刚开始在书/教程(http://ruby-auf-schienen.de/3.2/webserver_mit_capistrano.html)之后学习RoR。我达成了关于设置Capistrano部署的章节。本教程中使用了带有独角兽的nginx。我的环境是用于开发的Windows 7 PC和用作生产服务器的Debian PC问题是,unicorn在Windows环境中不起作用,因为在 bundle install 之后出现ngio错误:

安装kgio(2.8.0) Gem :: Installer :: ExtensionBuildError:错误:无法构建gem原生扩展

在这里和其他来源搜索我发现此错误是因为kgio仅适用于* nix系统。

我现在的问题是,我可以通过使用unicorn / nginx进行生产和使用瘦/ nginx进行开发的capistrano部署来设置我的环境吗? 什么时候怎么样? 什么时候,如果不将开发PC改为Linux,有什么可能?

提前感谢您的帮助。

此致 的Mathias

1 个答案:

答案 0 :(得分:0)

是的,有可能。 Unicorn永远不会在Windows上工作,因为它是围绕Unix技术明确设计的,而Thin则不是。这很简单。在Windows上,gem install thin。如果您运行rails s thin,它将作为开发服务器为您启动Thin。

话虽如此,我通常不鼓励将Windows作为Ruby工作的开发环境。有许多宝石在Windows上无法正常运行,并且您的应用程序在Windows上的行为与在Unix上的行为略有不同。在mininum,你应该有一个运行Linux的登台服务器。

我还建议Phusion Passenger优于Unicorn。它更易于使用和管理,是一个非常受欢迎的选择。例如,它被纽约时报,赛门铁克,AirBnB,亚马逊等使用。它以更智能的方式管理资源,并具有更多的稳定性和容错功能。