捆绑:卡皮斯特拉诺找不到

时间:2014-03-27 12:18:35

标签: ruby-on-rails capistrano

我在部署Rails应用程序时遇到了一些麻烦。

我收到了这条消息:

sh: 1:
bundle: not found

这是我的gemfile(只有capistrano部分):

gem "capistrano", "2.15.5"

这是我的部署(只是关于rbenv的重要部分)

  

set(:deploy_to){“/ home /#{user} /#{application} _#{rails_env}”}   set:default_environment,{'PATH'=> '$ HOME / .rbenv / shims:$ HOME / .rbenv / bin:$ PATH'}

当我输入ruby -v时,在服务器上,我得到ruby 2.0.0p247。当我输入which bundle时,我会/home/paul/.rbenv/shims/bundle

有什么问题?为什么我收到此消息?

感谢您的帮助。

1 个答案:

答案 0 :(得分:-1)

Capistrano在非常基本的shell中执行命令,因此$ PATH环境与通过SSH登录时的环境不同。

解决此问题的一种方法是在/etc/sshd_config中将PermitUserEnvironment设置为yes,然后将正确的PATH添加到~/.ssh/environment

另一种方式可以是

在你config/deploy.rb添加以下代码段

set :default_environment, {
  'PATH' => "/opt/ruby-enterprise/bin/:$PATH"
}