ruby – 为什么RVM系统宽?

我已经建立了一个轨道生产环境:
*用户名为部署的rails应用程序.
*部署用户只是一个没有sudo权限的普通用户.
*部署用户使用自己的沙盒rvm(无系统范围),所以任何 ruby只在部署用户下.
*运行apache的用户无法访问ruby环境,并且不需要访问apache dosen’t需要ruby.
*部署用户运行独角兽群集.

这个rvm非系统范围的配置对我来说非常棒.我看到的优点是:
*我每次安装宝石时都不需要使用sudo.
* Ruby是沙盒式的,仅适用于部署用户,从而通过最小化提高系统的安全性. Apache不关心ruby,所以它不能访问它!

我看到的唯一的缺点是我们不能使用乘客的Apache模块或乘客 – Nginx模块,但是后来乘客独自来救援!

我的问题:
为什么互联网上的每个人都倾向于使用RVM系统范围的安装?
我在生产中找不到关于RVM在非sudo模式中使用的单个帖子.
我错过了最关键的部分吗?我想知道在生产中非sudo rvm安装不是很好.

谢谢!

解决方法

我总是做一种混合的部署:

>我安装RVM系统(但它只适用于rvm组中的用户)
>我创建一个专用的用户,它是各种组的一部分:rvm,db(MysqL,postgres或任何你使用的),Nginx等…

这样你可以:

>执行所有与Web相关的管理任务,而不使用sudo或root
>使用capistrano而不用担心特权或ruby命令运行
保持对特权的控制,并从任何地方使用ruby
>完美使用bundler

如果您在特定用户下安装RVM,则不能在该用户之外使用ruby.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...