Capistrano выдает /usr/bin/env: ruby: при развертывании нет такого файла или каталога

Я настроил Capistrano для развертывания моего приложения. Я сделал это поэтапно, поэтому сначала я настроил развертывание кода, поэтому я прокомментировал все роли, но :app,

я использую rvm и у меня были некоторые проблемы с этим. Самая большая проблема была ошибка, которая сказала /usr/bin/env: ruby: No such file or directory, Я решил их, используя драгоценный камень capistrano/rvm и требует этого в Capfile и добавив следующую строку в deploy.rb файл:

set :default_env, { path: "/usr/local/rvm/gems/ruby-2.0.0-p247@global/bin:$PATH" }

Как только код развертывания запущен правильно, я активировал де :db роль для выполнения миграций. Я получаю ту же ошибку, но не могу найти решение на этот раз.

~$ cap production deploy:migrate
    …
    …
 INFO [85d6241d] Running bundle exec rake db:migrate on 10.10.51.10
 DEBUG [85d6241d] Command: cd [PROJECT_SRC]/current 
                  && ( PATH=/usr/local/rvm/gems/ruby-2.0.0-p247@global/bin:$PATH RAILS_ENV=production bundle exec rake db:migrate )
 DEBUG [85d6241d]            /usr/bin/env: ruby: No such file or directory
 cap aborted!

Эта команда выполняется правильно, когда я выполняю ее непосредственно в оболочке.

Заранее спасибо!

4 ответа

Решение

Наконец-то это сработало gem 'rvm1-capistrano3', require: false, Кажется, лучший вариант для моей настройки (Rails4.0.1, ruby-2.0.0-p247, capistrano3). Это не требует специальной настройки.

Вы можете найти это здесь.

Надеюсь, это поможет кому-то!

У меня была похожая проблема, и этот драгоценный камень помог мне: https://github.com/wayneeseguin/rvm-capistrano

Если вы не используете rvm, то, как правило, проблема заключается в том, что вам придется вручную устанавливать gem компоновщика на сервере.

gem install bundler

Вы пробовали официальные драгоценные камни капистрано? Это помогло мне, может быть, ваш вариант использования похож на.

Gemfile:

...
gem 'capistrano', '~> 3.2.0'
gem 'capistrano-rvm'
gem 'capistrano-rails'
...

Capfile:

require 'capistrano/setup'
require 'capistrano/deploy'
require 'capistrano/rvm'
require 'capistrano/bundler'
require 'capistrano/rails/migrations'
...
Другие вопросы по тегам