Ruby 1.9.2とPassenger 3で新しい環境をセットアップしました。Rails 3アプリはCapistranoと共に配備されています。 RAILS_ENVはステージングに設定されます。Rails 3を搭載した乗客3はベンダーからの宝石をロードしません/
アプリケーションを起動しようとすると、Passengerは見つからない宝石について不平を言う。
bundle --deployment
を実行すると、RAILS_ROOT /ベンダーに宝石をインストールされますが、エラーを解決しません。
システムガム(たとえば、sudo gem install)として不足している宝石をインストールした場合、エラーは消えますが、今度はGemfileの次のgemが見つからないと報告されます。
私の宝石をシステムにインストールすることでこれを解決することができましたが、ベンダーのディレクトリにインストールすることは効果がありません。私の理解は、バンドル業者の考えは、システムにすべての宝石をインストールしなければならないことを避けることです。私はRAILS_ROOT/.bundle /設定に設定されている
:
BUNDLE_FROZEN: "1"
BUNDLE_PATH: vendor/bundle
BUNDLE_DISABLE_SHARED_GEMS: "1"
私は何を提案していますか。私はそれを試してみるが、私は元の質問が残っていると思う:なぜ乗客はベンダー/バンドルで宝石をピックアップしないのだろうか? --deploymentフラグは、Bundlerサイトのhttp://gembundler.com/rationale.html#deploying-your-application – msmithstubbs
に記載されています(奇妙なことに、 'bundle --help')。なぜあなたの問題は乗客にあると思いますか?サーバーにスクリプト/コンソールを読み込もうとしましたか? – Zubin