2

現在、新しくインストールしたdebian squeeze 64ビットにWebistranoをインストールしようとしていますが、解決できない問題に直面しています。

注:マシンはXen環境で作成されているため、手順に影響はないと思いますが、言及することが重要であるように思われます。


手順:

情報:

  • Rubyバージョン:ruby 1.8.7 (2010-08-16 patchlevel 302) [x86_64-linux]
  • Railsバージョン: `Rails 2.3.11
  • パス修飾子:/usr/lib/ruby/1.8:/var/lib/gems/1.8/bin
  • Rails env:開発
  • データベースが作成されました
  • webistranoのデータベース設定は正しいと思います(user / pass / path_to_sock_file)

だから、これが私がしたことです:

私は最初にそのようなインストールのために「基本」パッケージをインストールしました:

# apt-get install build-essential ruby rubygems libmysql-ruby libmysqlclient-dev libdbd-mysql-ruby mysql-server unzip rake

次に、プロジェクトをダウンロードして/ usr/srcに抽出しました。電子メール/データベース設定用のファイルをコピーして構成した後(https://github.com/peritor/webistranoで提案されているように)、プロジェクトに必要なすべてのgemをインストールし続けました。

bundle install

この時点で、コマンドはスタックし、1時間何もしていません。

Gemfileが複雑な場合に発生する可能性があることはわかっていますが、私には当てはまらないようです。(以下のGemfileを参照してください)

# cat Gemfile
source "http://rubygems.org"

gem 'bundler', "~>1.0.10"
gem "rails", "2.3.11"
gem "mysql"
gem "erubis"
gem "rake"
gem "syntax", "1.0.0"
gem "capistrano", "2.6.0"
gem "open4", "0.9.3"
gem "exception_notification", "2.3.3.0"

group :test do
  gem "mocha", "0.9.8"
end

それで、先に進むことに決めたので、私は宝石を手でインストールしました。

# gem list *gems of Gemfile*
bundler (1.0.10)
rails (2.3.11)
mysql (2.8.1)
erubis (2.7.0)
rake (0.9.2.2)
syntax (1.0.0)
capistrano (2.6.0)
open4 (0.9.3)
exception_notification (2.3.3.0)
mocha (0.9.8)

したがって、実行しなくてもすべてが機能するはずだと思います。bundle install

これが、私がついにrakeを使用してデータベースの構造を作成しようとした理由です。

# rake db:migrate --trace
(in /usr/src/peritor-webistrano-a98ba6b)
rake aborted!
Bundler couldn't find some gems.Did you run `bundle install`?
/usr/src/peritor-webistrano-a98ba6b/config/../config/preinitializer.rb:18
/usr/src/peritor-webistrano-a98ba6b/config/boot.rb:28:in `load'
/usr/src/peritor-webistrano-a98ba6b/config/boot.rb:28:in `preinitialize'
/usr/src/peritor-webistrano-a98ba6b/config/boot.rb:10:in `boot!'
/usr/src/peritor-webistrano-a98ba6b/config/boot.rb:123
/usr/src/peritor-webistrano-a98ba6b/Rakefile:4:in `require'
/usr/src/peritor-webistrano-a98ba6b/Rakefile:4
/usr/lib/ruby/1.8/rake.rb:2383:in `load'
/usr/lib/ruby/1.8/rake.rb:2383:in `raw_load_rakefile'
/usr/lib/ruby/1.8/rake.rb:2017:in `load_rakefile'
/usr/lib/ruby/1.8/rake.rb:2068:in `standard_exception_handling'
/usr/lib/ruby/1.8/rake.rb:2016:in `load_rakefile'
/usr/lib/ruby/1.8/rake.rb:2000:in `run'
/usr/lib/ruby/1.8/rake.rb:2068:in `standard_exception_handling'
/usr/lib/ruby/1.8/rake.rb:1998:in `run'
/usr/bin/rake:28

レーキのエラーメッセージによると、いくつかの宝石が正しくインストールされていないようです。これは奇妙に思えますが、彼はそれを見つけることができないと思います。

だから私はバンドルツールで再確認します:

# bundle check
Your Gemfile's dependencies could not be satisfied
Install missing gems with `bundle install`
# bundle show
Could not find gem 'mocha (= 0.9.8, runtime)' in any of the gem sources listed in your Gemfile.

そして、私はここで立ち往生しています、私はただ続行する方法がわかりません。私はモカやgemfileの問題についてグーグルで検索しましたが、あまり関連性がありません。

これが私の最初の投稿なので、すべてが明確で理解しやすいことを願っています。

返信/ヒントをありがとう、また私がなんとか進化することができれば、私はあなたを最新の状態に保つように努めます!

4

1 に答える 1

0

次の手順を確認してください: http://www.gogolek.co.uk/blog/2012/10/web-application-deployment-webistrano-capistrano/

さらに、クリーンなdebian 6 64ビットへのmysql gemのインストールに問題があったため、実行する必要がありました

$ apt-get install libmysqlclient-dev ruby-dev 

最終的に次のgemがインストールされました

Using rake (0.8.7) 
Using activesupport (2.3.11) 
Using rack (1.1.6) 
Using actionpack (2.3.11) 
Using actionmailer (2.3.11) 
Using activerecord (2.3.11) 
Using activeresource (2.3.11) 
Using bundler (1.0.10) 
Using highline (1.6.20) 
Using net-ssh (2.7.0) 
Using net-scp (1.1.2) 
Using net-sftp (2.1.2) 
Using net-ssh-gateway (1.2.0) 
Using capistrano (2.6.0) 
Using erubis (2.7.0) 
Using exception_notification (2.3.3.0) 
Using mocha (0.9.8) 
Installing mysql (2.9.1) with native extensions 
Installing open4 (0.9.3) 
Installing rails (2.3.11) 
Installing syntax (1.0.0) 
Your bundle is updated! Use `bundle show [gemname]` to see where a bundled gem is installed.
于 2013-12-08T19:28:40.983 に答える