2012-08-08 85 views
1

我刚刚设置了一个将托管多个RoR站点的VPS。我打算使用nginx作为我的服务器和乘客进行部署。我想知道如何使用RVM与多个RoR站点一起使用多个gemset,这可能吗?如果是这样,我应该如何安装它?我已经读过,这只会在您安装bash < <(curl -s https://rvm.beginrescueend.com/install/rvm时出现问题。在本文中,我曾多次提到过它将不会允许多个宝石集。在VPS上安装RVM

http://coding.smashingmagazine.com/2011/06/28/setup-a-ubuntu-vps-for-hosting-ruby-on-rails-applications-2/

任何帮助将是非常赞赏。使用nginx,passenger和rvm在VPS上设置RoR的任何文章或教程都很棒。谢谢!

回答

-2

我不建议您使用RVM来管理生产环境中的rails项目依赖项。它主要不是设计成依赖管理器,而是用于管理多个Ruby VM的工具。

更合适的解决方案是使用Bundler,这是一种更干净和更安全的方式来管理Ruby中的依赖关系。因为你明确地声明了每个项目所需的宝石及其版本。更安全,因为它会强制Rails应用程序加载正确的gem版本。

This answer阐述了这个问题。

+0

我想知道我的答案中有什么荒谬之处,因为我提出了一个成熟的解决方案来解决rails中的依赖管理问题。 – 2012-08-08 16:04:11

+0

RVM适用于Bundler和Rails,RVM主要设计用于在服务器上工作,您的回答不鼓励使用RVM,而是一个很好的解决方案。 – mpapis 2012-08-08 22:40:59

+0

我并不沮丧地使用RVM来代表它的名字:Ruby Version Management。我用它来安装/更新/切换ruby版本。我真的感到沮丧的是,它被用于隔离Rails应用程序在多租户环境中的依赖关系,如OP似乎打算(我可能已经弄错了)在Bundler几乎是Rails默认的这样的任务的世界。在我的机器上,我只是'rvm install ruby​​-1.9.3',并使用默认的nginx/passenger配置。我甚至不用担心sandboxing站点gem依赖项,因为bundler会为我完成这一切。 – 2012-08-09 00:15:44