微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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.

原文地址:https://www.jb51.cc/ruby/266753.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐