$ RAILS_ENV=production bin/rake db:migrate #失敗
$ RAILS_ENV=production bundle exec rake db:migrate #成功
どうやら、bin/rake
を使うとspring
ってのが動くのだがこれが悪さしていたようだ。
production
環境では、bundle exec
を使う方が無難とのこと。
SpringはRailsアプリケーション用のプリローダーです。アプリケーションをバックグラウンドで常駐させることで開発速度を向上させ、テストやrakeタスク、マイグレーションを実行するたびにRailsを起動しないで済むようにします。
Rails 4.1アプリケーションに含まれるbinstubは「spring化」されています。これは、アプリケーションのルートディレクトリでbin/railsおよびbin/rakeを実行すると自動的にspring環境をプリロードするということです。
https://railsguides.jp/4_1_release_notes.html