2010-07-28 3 views
2

mon environment.rb contient:Solve problème de rack pour Dreamhost et Rails 3 rc

ENV['GEM_PATH'] = File.expand_path('~/.gems') + ':/usr/lib/ruby/gems/1.8' 

Mon Gemfile contient:

source 'http://rubygems.org' 
source :gemcutter 

gem 'rails', '3.0.0.rc' 


gem 'mysql' 
gem 'haml' 
gem 'RedCloth' 
gem "friendly_id", "~> 3.0" 
gem 'agnostic-will_paginate', "~> 3.0.0" 


# Use unicorn as the web server 
# gem 'unicorn' 

# Deploy with Capistrano 
#gem 'capistrano' 


# To use debugger 
# gem 'ruby-debug' 

# Bundle the extra gems: 
# gem 'bj' 
# gem 'nokogiri', '1.4.1' 
# gem 'sqlite3-ruby', :require => 'sqlite3' 
# gem 'aws-s3', :require => 'aws/s3' 

L'erreur après le déploiement d'une application Rails 3 sur dreamhost est:

Vous avez déjà activé le rack 1.1.0, mais votre Gemfile requiert le rack 1.2.1. Pensez à utiliser l'exec bundle.

/home/dreamhostuser/.gems/gems/bundler-1.0.0.rc.1/lib/bundler/runtime.rb  27  in `setup' 
1 /home/dreamhostuser/.gems/gems/bundler-1.0.0.rc.1/lib/bundler/spec_set.rb 12 in `each' 
2 /home/dreamhostuser/.gems/gems/bundler-1.0.0.rc.1/lib/bundler/spec_set.rb 12 in `each' 
3 /home/dreamhostuser/.gems/gems/bundler-1.0.0.rc.1/lib/bundler/runtime.rb 17 in `setup' 
4 /home/dreamhostuser/.gems/gems/bundler-1.0.0.rc.1/lib/bundler.rb 97 in `setup' 
5 /home/dreamhostuser/domain.net/releases/20100728144817/config/boot.rb 5 
6 /usr/lib/ruby/1.8/rubygems/custom_require.rb 31 in `gem_original_require' 
7 /usr/lib/ruby/1.8/rubygems/custom_require.rb 31 in `require' 
8 /home/dreamhostuser/domain.net/releases/20100728144817/config/application.rb 1 
9 /usr/lib/ruby/1.8/rubygems/custom_require.rb 31 in `gem_original_require' 
10 /usr/lib/ruby/1.8/rubygems/custom_require.rb 31 in `require' 
11 /home/dreamhostuser/domain.net/releases/20100728144817/config/environment.rb 4 
12 /usr/lib/ruby/1.8/rubygems/custom_require.rb 31 in `gem_original_require' 
13 /usr/lib/ruby/1.8/rubygems/custom_require.rb 31 in `require' 
14 config.ru 3 
15 /usr/lib/ruby/gems/1.8/gems/rack-1.1.0/lib/rack/builder.rb 46 in `instance_eval' 
16 /usr/lib/ruby/gems/1.8/gems/rack-1.1.0/lib/rack/builder.rb 46 in `initialize' 
17 config.ru 1 in `new' 
18 config.ru 

Autres remarques: Rails 3 beta 4 fonctionne.

Rétablie en version beta 4 pour l'instant. Serait bon de savoir comment résoudre ce problème pour Rails 3. Dreamhost est ok pour la mise en scène des applications.

+0

Voir ma réponse ici: http://stackoverflow.com/questions/3800700/rack-error-with-dreamhost-passenger-and-rails-3-0-0-rc/3806094#3806094 – Hongli

Répondre

5

J'ai eu le même problème sur mon compte partagé sur Dreamhost, j'ai pu le faire fonctionne de cette façon:

Sur ma machine locale:

bundle package 

Sur Dreamhost:

bundle install --path vendor/bundle --local 

Et cela fonctionne parfaitement.