Heroku + Ruby on Rails 3.2 で Webアプリ開発するときによく使うコマンドと一連の流れまとめ


Heroku + Ruby on Rails 3.2系で Webアプリ開発するときによく使うコマンドをこの記事だけ読めばほぼ分かるように一連の流れと共にまとめてみました。(最終更新日:2012/06/02)

事前準備

Ruby, Rails, Heroku などの環境が整っていない場合は、下記を参考に開発環境を整えましょう。

[Mac] Homebrew をインストール | CodeNote.net はてなブックマーク - [Mac] Homebrew をインストール | CodeNote.net

Mac OS X Lion に RVM で Ruby の開発環境を構築する手順 | CodeNote.net はてなブックマーク - Mac OS X Lion に RVM で Ruby の開発環境を構築する手順 | CodeNote.net

[RVM] Ruby on Rails のバージョンを管理する方法 | CodeNote.net はてなブックマーク - [RVM] Ruby on Rails のバージョンを管理する方法 | CodeNote.net

[Ruby][RVM] gemset global に Heroku をインストールする | CodeNote.net はてなブックマーク - [Ruby][RVM] gemset global に Heroku をインストールする | CodeNote.net
 

Ruby on Railsのアプリ作成

rails new コマンドでRailsアプリを作成後、rails s コマンドでWEBrickというシンプルなHTTPサーバを起動して、http://localhost:3000/ にアクセスしてブラウザで確認します。

rails new myapp -T
cd myapp
rails s

 

Gitのリポジトリ作成・コミット

Gitリポジトリを作成して、最初のコミットをします。

git init
git add -A
git commit -m "create new app"

 

Gemfile の編集, Gem のインストール

必要な Gem をインストールします。

# webserver
gem 'thin'
 
group :production do
  gem 'pg'
end
 
group :development, :test do
  gem 'sqlite3'
  # For TDD
  gem 'spork'
  gem 'rspec-rails'
  gem 'autotest-rails'
  gem 'webrat'
  gem 'cucumber'
end

Gemfile を編集後、gem の依存関係を整理して再インストールするために bundle install します。

bundle install --without production

 

Herokuアプリの作成・デプロイ

heroku create コマンドで heroku にアプリケーションを作成します。

引数に名前を入力すると指定した名前でアプリケーションを登録します。

また、Rails 3.1 からは Cedar スタックでないと動作しないため、–stack cedar オプションを付けて、Herokuアプリケーションを作成する必要があります。

(2012年6月20日からデフォルトで Cedar スタックで作成されるみたいです。)

heroku create myapp --stack cedar

・参考:Heroku | Dev Center | Rails 3.1 on Heroku Cedar はてなブックマーク - Heroku | Dev Center | Rails 3.1 on Heroku Cedar

・参考:Heroku | Dev Center | Getting Started with Rails 3.0 on Heroku/Cedar はてなブックマーク - Heroku | Dev Center | Getting Started with Rails 3.0 on Heroku/Cedar
 

次に、Gitを使って、作成したアプリの Heroku 側のレポジトリにアプリケーションのソースコードを送信します。

git push heroku master

heroku open コマンドで作成したアプリをブラウザで開いて確認します。

$ heroku open

 

Webサーバーを WEBrick から thin に変更する

こちらを参考にして、Heroku 上のWEBサーバーを WEBrick から thin に変更します。

[Heroku] WebServer を WEBrick から thin に変更する方法 – [Rails 3.x on Heroku/Cedar] | CodeNote.net はてなブックマーク - [Heroku] WebServer を WEBrick から thin に変更する方法 – [Rails 3.x on Heroku/Cedar] | CodeNote.net
 

データベース(PostgreSQL)の初期設定

shared database ではなく、heroku-postgresql:dev を使うように設定します。

[Heroku] heroku-postgresql:dev の設定方法 | CodeNote.net はてなブックマーク - [Heroku] heroku-postgresql:dev の設定方法 | CodeNote.net

heroku はデプロイ時に database.yml を自動生成するそうなので、database.yml の設定は特に必要ないみたいです。
 

Railsのアプリを作成していく

■ デフォルトルートの静的ファイル index.html を削除する

git rm public/index.html

■ DB作成

rails generate model user \
uid:integer name:string first_name:string middle_name:string last_name:string \
link:text username:string gender:string locale:string email:string friend_num:integer
git commit -am "create model"
heroku run rake db:migrate --app=myapp-staging

■ コントローラー(Controller)クラスの作成

rails g controller users

■ staging環境でエラー画面をdevelop環境のものと同じ表示に変更

config/environments/staging.rb

# Full error reports are disabled and caching is turned on
config.consider_all_requests_local       = false
config.action_controller.perform_caching = true

 

便利なHerokuコマンドたち

■ ログを垂れ流しで確認する

heroku logs --tail

■ Heroku上で Railsコンソールを起動する

heroku run console

 

とりあえず、以上です。(随時更新予定)

  1. コメントはまだありません。

  1. トラックバックはまだありません。