使用rvm1-capistrano3安装Ruby

Jum*_*ton 1 ruby capistrano ruby-on-rails rvm capistrano3

我跑的时候

cap production rvm1:install:ruby
Run Code Online (Sandbox Code Playgroud)

我在控制台输出结束时收到此错误:

Command: cd ~/apps/foo/releases/20140121133714 && ( PATH=/opt/ruby/bin:$PATH /usr/bin/env /tmp/foo/rvm-auto.sh rvm install . )
Run Code Online (Sandbox Code Playgroud)

无法确定使用哪个Ruby; .应包含.rvmrc或.versions.conf或.ruby-version或.rbfu-version或.rbenv-version,或Gemfile中的相应行.
帽子流产!

编辑

.ruby-version我的应用程序的根目录添加了一个我得到的内容

DEBUG [af3b80bc] Command: cd ~/apps/foo/releases/20140121160854 && /usr/bin/env /tmp/foo/rvm-auto.sh rvm install .
DEBUG [af3b80bc]    ruby-2.0.0-p247 is not installed.
DEBUG [af3b80bc]    To install do: 'rvm install ruby-2.0.0-p247'
DEBUG [af3b80bc]    ruby-2.0.0-p247 is not installed.
DEBUG [af3b80bc]    Searching for binary rubies, this might take some time.
DEBUG [af3b80bc]    ruby-2.0.0-p247 is not installed.
DEBUG [af3b80bc]    Searching for binary rubies, this might take some time.
DEBUG [af3b80bc]    No binary rubies available for: ubuntu/12.10/x86_64/system.
DEBUG [af3b80bc]    Searching for binary rubies, this might take some time.
DEBUG [af3b80bc]    Continuing with compilation. Please read 'rvm help mount' to get more information on binary rubies.
DEBUG [af3b80bc]    Searching for binary rubies, this might take some time.
DEBUG [af3b80bc]    RVM does not have prediction for required space for system, assuming 150MB should be enough, let us know if it was not.
DEBUG [af3b80bc]    Searching for binary rubies, this might take some time.
DEBUG [af3b80bc]    Either the ruby interpreter is unknown or there was an error!.
Run Code Online (Sandbox Code Playgroud)

我用rvm1-capistrano宝石运行Capistrano 3.1.1 .这是开箱即用的实施; 没什么特别的.

group :development do
  gem 'capistrano', '~> 3.1.0'
  gem 'capistrano-rails'
  gem 'capistrano-bundler'
  gem 'rvm1-capistrano3', require: false
# gem 'capistrano-rvm'
end

# capfile
require 'capistrano/setup'
require 'capistrano/deploy'
require 'capistrano/rails'
require 'capistrano/bundler'
require 'rvm1/capistrano3'
Dir.glob('lib/capistrano/tasks/*.cap').each { |r| import r }
Run Code Online (Sandbox Code Playgroud)

我还在输出中得到另外两个错误:

Running /usr/bin/env [ -L ~/apps/foo/releases/20140121135720/public/assets ] on foo.com
Command: [ -L ~/apps/foo/releases/20140121135720/public/assets ]
Finished in 0.291 seconds with exit status 1 (failed).
Running /usr/bin/env [ -d ~/apps/foo/releases/20140121135720/public/assets ] on foo.com
Command: [ -d ~/apps/foo/releases/20140121135720/public/assets ]
Finished in 0.295 seconds with exit status 1 (failed).
Run Code Online (Sandbox Code Playgroud)

iva*_*xuu 6

问题

如果你去远程服务器并执行:

cd ~/apps/foo/releases/20140121160854 && /usr/bin/env /tmp/foo/rvm-auto.sh rvm install .
Run Code Online (Sandbox Code Playgroud)

您将得到相同的错误,但如果您执行此操作

cd ~/apps/foo/releases/20140121160854 && /usr/bin/env /tmp/foo/rvm-auto.sh rvm install ruby-2.0.0-p247
Run Code Online (Sandbox Code Playgroud)

成功.rvm-auto.sh执行rvm install .命令时出现问题.不确定是否是一个rvm问题,但它看起来对我的眼睛..

解决方法

如果您指定要安装的所需版本的ruby config/deploy.rb:

set :rvm1_ruby_version, "ruby-2.0.0-p247"
Run Code Online (Sandbox Code Playgroud)

在执行任何rvm1任务之前.一切都应该没问题