0

gem Paperclipを使用していて、capistranoを使用してアプリをサーバーにデプロイしたかったのですが、実行するcap deployと、最後に次のメッセージが表示されます。

 * executing "cd /home/administrator/myApp/releases/20120506165329 && bundle install --gemfile /home/administrat
or/myApp/releases/20120506165329/Gemfile --path /home/administrator/myApp/shared/bundle --deployment --qui
et --without development test"
    servers: ["myserver.com"]
    [myserver.com] executing command
 ** [out :: myserver.com] Gem::InstallError: paperclip requires Ruby version >= 1.9.2.
 ** [out :: myserver.com] An error occured while installing paperclip (3.0.3), and Bundler cannot continue.
 ** [out :: myserver.com] Make sure that `gem install paperclip -v '3.0.3'` succeeds before bundling.
    command finished in 66362ms
*** [deploy:update_code] rolling back
  * executing "rm -rf /home/administrator/myApp/releases/20120506165329; true"
    servers: ["myserver.com"]
    [myserver.com] executing command
    command finished in 66ms
failed: "sh -c 'cd /home/administrator/myApp/releases/20120506165329 && bundle install --gemfile /home/administra
tor/myApp/releases/20120506165329/Gemfile --path /home/administrator/myApp/shared/bundle --deployment --qu
iet --without development test'" on myserver.com

サーバーでRubyのバージョンを確認したところ、次のようになりました。

$ruby -v
ruby 1.9.2p290 (2011-07-09 revision 32553) [i686-linux]

また、サーバーでgemを手動でインストールしました。

gem install paperclip -v '3.0.3'
...
Successfully installed paperclip-3.0.3

もう一度走りcap deployましたが、同じメッセージが表示されました

アプリをデプロイするにはどうすればよいですか?

よろしくお願いします

4

1 に答える 1

0

ここで受け入れられた回答で提案されているように、capistranoのデフォルト環境を設定することで修正されました

これで、capistranoを使用してデプロイできます(私のシステムrubyはまだruby 1.8.7を使用しているため、gemペーパークリップが正しくインストールされませんが、この問題はここで見つかります)

于 2012-05-06T22:35:17.930 に答える