2012-08-08 105 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