2

アプリを Amazon EC2 マシンにデプロイする Capistrano スクリプトがあります。アセットのコンパイル時に失敗しています:

* executing "cd -- /home/ec2-user/uc_social_server/releases/20130731161645 && RAILS_ENV=production RAILS_GROUPS=assets rake assets:precompile"
    servers: ["ec2-23-22-188-11.compute-1.amazonaws.com"]
    [ec2-23-22-188-11.compute-1.amazonaws.com] executing command
 ** [out :: ec2-23-22-188-11.compute-1.amazonaws.com] Could not find thread_safe-0.1.0 in any of the sources
 ** [out :: ec2-23-22-188-11.compute-1.amazonaws.com] 
 ** [out :: ec2-23-22-188-11.compute-1.amazonaws.com] Run `bundle install` to install missing gems.
 ** [out :: ec2-23-22-188-11.compute-1.amazonaws.com] 
    command finished in 591ms
*** [deploy:update_code] rolling back
  * executing "rm -rf /home/ec2-user/uc_social_server/releases/20130731161645; true"
    servers: ["ec2-23-22-188-11.compute-1.amazonaws.com"]
    [ec2-23-22-188-11.compute-1.amazonaws.com] executing command
    command finished in 201ms
failed: "sh -c 'cd -- /home/ec2-user/uc_social_server/releases/20130731161645 && RAILS_ENV=production RAILS_GROUPS=assets rake assets:precompile'" on ec2-23-22-188-11.compute-1.amazonaws.com
4

2 に答える 2

2

deploy.rbに以下を追加

require "bundler/capistrano"
require "rvm/capistrano"
before "deploy:assets:precompile", "bundle:install"

そしてCapfileに続く

load 'deploy/assets'

そしてGemfileに続く

gem 'rvm-capistrano'

私の問題を解決しました。rvm を使用していない場合は、rvm/capistrano または rvm-capistrano gem を必要としない可能性があります。

于 2013-07-31T17:00:22.777 に答える
1

この行をCapfile

require 'capistrano/bundler'
于 2014-03-23T20:24:11.300 に答える