Не удалось найти единорога (> = 0) среди - PullRequest
3 голосов
/ 26 октября 2011

В настоящее время я использую capistrano для развертывания моего проекта. Однако у меня есть эта проблема ниже:

$ cap deploy:start

* executing `deploy:start'
  * executing " /usr/local/rvm/gems/ruby-1.9.2-p290/bin/unicorn_rails -c /app/current/config/unicorn.rb -E production -D"
    servers: ["x.x.x.x"]
    [x.x.x.x] executing command
 ** [out :: x.x.x.x] /usr/local/rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/dependency.**rb:247:in `to_specs': Could not find unicorn (>= 0) amongst [minitest-1.6.0, rake-0.8.7, rdoc-2.5.8]** (
 ** [out :: x.x.x.x] Gem::LoadError)
 ** [out :: x.x.x.x] from /usr/local/rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:256:in `to_spec'
 ** [out :: x.x.x.x] from /usr/local/rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems.rb:1210:in `gem'
 ** [out :: x.x.x.x] from /usr/local/rvm/gems/ruby-1.9.2-p290/bin/unicorn_rails:18:in `<main>'
 ** [out :: x.x.x.x] 
    command finished in 253ms
failed: "sh -c '/usr/local/rvm/gems/ruby-1.9.2-p290/bin/unicorn_rails -c /app/current/config/unicorn.rb -E production -D'" on x.x.x.x

версия программного обеспечения:

  • рельсы 3.1
  • рубиново-1.9.2-P290
  • Ubuntu 10.04

Может ли кто-нибудь помочь? Большое спасибо !!

Ответы [ 2 ]

2 голосов
/ 25 ноября 2011

Capistrano не может найти правильную переменную PATH, GEM_PATH и GEM_HOME. Вы должны установить их в config/deploy.rb, как показано ниже:

set :default_environment, {
  'PATH' => "/usr/local/rvm/gems/ruby-1.9.2-p290/bin:/usr/local/rvm/gems/ruby-1.9.2-p290@global/bin:/usr/local/rvm/rubies/ruby-1.9.2-p290/bin:/usr/local/rvm/bin:$PATH",
  'RUBY_VERSION' => 'ruby 1.9.2p290',
  'GEM_HOME' => '/usr/local/rvm/gems/ruby-1.9.2-p290',
  'GEM_PATH' => '/usr/local/rvm/gems/ruby-1.9.2-p290:/usr/local/rvm/gems/ruby-1.9.2-p290@global'
}
0 голосов
/ 26 октября 2011

Кажется, гем Unicorn не установлен на сервере.

Войдите на сервер и запустите

which unicorn_rails

Если он не возвращает путь, это означает, что оннедоступен.Войдите в систему как root, затем установите его.

$ gem install unicorn
...