Rails 3: Passenger can't find git gems || gem is not checkout Please run bundle install

ails 3.0.0, Passenger 2.2.15:
  • Create a new Rails project
  • Add gem 'paperclip', :git => 'git://github.com/lmumar/paperclip.git', :branch => 'rails3'to your Gemfile
  • Do bundle install
  • Everything OK, starting with rails/script server & accessing also works
  • However, when accessing with Passenger, it says:

git://github.com/lmumar/paperclip.git (at rails3) is not checked out. Please run bundle install (Bundler::GitError)

I have tried bundler pack (doesn't help) and setting BUNDER_HOME to ~/.bundler (the Paperclip git gets installed there by bundler install) in the .htaccess and various places in config/*.rb, but this wasn't successful, too.

~/.bundler is owned by the same user as the Rails project (Passenger runs under this user), so it can't be a permission problem. sudo is installed and called by bundle install.

--------------------------------------------

Im used to have this problem, resolve using

bundle --deployment 

Which will install the gems in vendor/bundle

or bundle install --path vendor/bundle to install the gems locally, instead of into system gems.

  

or

Mare sure that RAILS_ROOT/.bundle/config (SetEnv etc. didn't work for me) contains:

--- BUNDLE_PATH: /home/xxxxx/.bundler 

Note BUNDLE_PATH, not BUNDLER_PATH! There was also an DISABLED_SHARED_GEMS=1 entry, I removed it.

Then bundler recognises the correct path even when loaded from Passenger. Without Passenger, it always worked (and used /home/xxxxx/.bundler, as said in the question)



你可能感兴趣的:(Rails 3: Passenger can't find git gems || gem is not checkout Please run bundle install)