ERROR rbenv:2.1.2未安装或未找到

时间:2014-10-31 21:58:10

标签: ruby-on-rails ubuntu ruby-on-rails-4 capistrano rbenv

我尝试使用this指南将我的Rails应用项目部署到我的Digital Ocean vps。

当它说:

cap production deploy:check

我收到错误:

DEBUG [8906f2ab] Running /usr/bin/env [ ! -d ~/.rbenv/versions/2.1.2 ] on 178.62.204.53
DEBUG [8906f2ab] Command: [ ! -d ~/.rbenv/versions/2.1.2 ]
DEBUG [8906f2ab] Finished in 1.320 seconds with exit status 0 (successful).
ERROR rbenv: 2.1.2 is not installed or not found in ~/.rbenv/versions/2.1.2

我跑了:

rbenv install 2.1.2

导致:

Downloading ruby-2.1.2.tar.gz...
-> http://dqw8nmjcqpjn7.cloudfront.net/f22a6447811a81f3c808d1c2a5ce3b5f5f0955c68c9a749182feb425589e6635
Installing ruby-2.1.2...
Installed ruby-2.1.2 to /home/alucardu/.rbenv/versions/2.1.2

当我检查rbenv -v时,我得到:

rbenv 0.4.0-129-g7e0e85b

当我签入我的文件屏幕并转到/home/alucardu/.rbenv/versions/2.1.2那里的内容时。

当我检查我的Ruby时,我得到了:

ruby 2.1.2p95 (2014-05-08 revision 45877) [i686-linux]

有人能指出我的问题所在吗?

1 个答案:

答案 0 :(得分:2)

你在哪里运行rbenv install 2.1.2命令?在本地还是在服务器上? Capistrano需要在服务器上安装ruby

此外,您需要为要部署的用户安装ruby。 您似乎遵循的教程建议使用root用户进行部署(可能不是最佳做法),因此在这种情况下capistrano会在root用户中查找ruby家庭目录/root/.rbenv...

所以&#34;修复&#34;是: - 以ssh root@<server_ip>为root用户登录服务器 - 现在,用rbenv install 2.1.2

以root身份安装ruby 2.1.2

如果您不想搞砸,我专门为此创建了一个capistrano-rbnev-install插件。该插件可确保您不再需要担心ruby版本。