我正在尝试在我的Debian 6系统上安装rbenv进行生产。做这个的最好方式是什么?我尝试了github wiki页面(https://github.com/sstephenson/rbenv/wiki/Using-rbenv-in-production和https://github.com/sstephenson/rbenv/wiki/shared-install-of-rbenv)的一些内容,但我想知道什么是最佳实践。
使用部署用户或系统范围安装它是否更好?对于部署用户,似乎所有用户都无法使用rubies,即使我使用rbenv global 1.9.3-p125
进行安装并且gem
突击队也不可用。这必须是我的路径,因为我只包括
if [[ -d $HOME/.rbenv ]]; then
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"
fi
在我的部署用户的.bashrc
文件中。乘客/阿帕奇知道我的红宝石在哪里吗?因为apache与www-data
用户一起运行。
使用系统范围的安装(请参阅上面的共享安装链接)我遇到了一些奇怪的错误,即找不到rbenv命令,无法编译。
那么,我该怎么办?我想将它用于我的生产服务器,以便将来可以轻松切换红宝石。
答案 0 :(得分:1)
我个人会去部署用户路线并使用rbenv-sudo插件来处理边缘情况,例如乘客安装,厨师或类似的东西。我认为大多数人不使用rbenv或rvm进行生产,这就是lot of people are stuck on 1.8的原因。这是一种耻辱,因为如你所说,轻松切换Ruby版本会很好。话虽如此,生产不应该经常切换Ruby吗?您可以使用Ruby源中的配置标志轻松地自行管理ruby版本。只是不要安装到/ usr / bin。
Sstephenson说,共享安装在该共享安装的rbenv链接中是实验性的。 Rbenv global不会跨用户帐户执行任何操作。它在用户帐户中是全局的。
在部署用户之外,您在生产中需要多少个帐户?
答案 1 :(得分:0)
您应指定用户(乘客使用)对您的rbenv具有访问权限。