pandazx's blog

Hadoop, データ分析など雑多な技術ブログ

Rails 3.2.2 と ruby 1.9.2 でheroku

前提

heroku上に今までに構築に失敗したゴミアプリがある場合はすべて削除から実行すること
ruby1.9.3-p125とrvmなどはインストール済であることが前提
そのあたりはこの辺を参考に。
開発環境構築 - ものごとの調査記録
後半はうまくいっていないので、rvmを使ってrubyをインストールするところまで。

本題

Railsアプリ作成 + Herokuデプロイ - I can't change the world.
Rails3.0.9の場合と同じく、基本的にはこのサイトに従えばよい。

以下、変更点。
#1
postgresqlを使うので、Gemfileを以下のコマンドで変更し、bundle install

curl https://raw.github.com/gist/1970532/376b6a26ed936ac43cad0b17a64512f5c0216a50/Gemifile > Gemfile
rm -f Gemfile.lock
bundle install --without production

参考:macを買って、今すぐherokuでruby1.9.3 + rails3.2しよう! - ppworks blog


#2
Rails3.2の場合、stackがcedarである必要がある
ruby 1.9.3の場合にcedarである必要があると思ってたので、勘違いしてた。。。)
HerokuでRails 3.2を動かそうとしたら変なエラーが出て来たのであれこれした。 | Ginpen.com
そのため、herokuにアプリを作成する際に以下のようにする必要がある

heroku create --stack cedar myapp


#3
heroku rake db:migrate は heroku run rake db:migrate