Herokuを試してみる
Heroku というのが流行っているらしい。とりあえず試してみることに。
MacBookPro に環境を作ってみる。
環境:Snow Leopard
rails インストール
http://sememo.blue-robin.jp/?p=376
元々入っていたが、gem のアップデートと rails のアップデートを行った
$ gem update --system $ gem install rails $ rails -v Rails 3.0.3
3.0.3 が入った。新しいものらしい。
mysql5 インストール
mysql5-server をインストール
$ sudo port install mysql5-server
mysql の起動では、既に動いていた mysql があったので kill で落としてから再起動する
$ mysql5 -u root -p
でログインできた。
次に Rails に MySQL 用のモジュールを導入する。
$ sudo env ARCHFLAGS="-arch x86_64" gem install mysql
config/database.yml を mysql 用に変更
development: adapter: mysql database: sandbox pool: 5 timeout: 5000 username: xxxx password: **** socket: /opt/local/var/run/mysql5/mysqld.sock
rake db:migrate まで行ったが mysql2 のエラーが出た。以下を参考に Gemfile を変更
http://blog.everyleaf.com/27538644
socket のエラーが出たので以下を参考に database.yml を修正
http://cyclon.s11.xrea.com/mt/archives/2005/11/ruby_on_rails_m.html
次は root でアクセスしようとしてるエラーが出る。
database.yml の中の username: が user: になっていた
次は 設定したユーザ名でアクセスしているがエラーになる
mysql でのパスワード設定が甘かったらしい。
mysql>; grant all privileges on sandbox.* to xxxx@localhost identified by '****';
xxxx は任意のユーザ名で、**** はパスワード。database.yml の記述と同じにする
今回は xxxx@localhost の部分を xxxx@'%' としていたらダメだった。
http://d.hatena.ne.jp/shingotada/20070117/1169043983#c
http://localhost:3000/users/ にアクセスしたらユーザページ出た!やった!
ここまで来て思ったけど、 rails new app_name -d mysql としたらもっと楽だったかも。次回はそうしよう。
Rails3 での Hello World
http://mentalized.net/journal/2010/02/05/hello_rails_3_world/
$ rails new sandbox
sandbox 環境を git で登録
Rails3 の hello world まで
script が多少変わっていて戸惑った。
route.rb の最後の行を有効にするのがミソ
Herokuの登録
http://kuranuki.sonicgarden.jp/2009/05/rubypaasherokurails.html
$ heroku create
heroku create で sshキーが無いというエラーになった。以下を参照して作成。
http://www.mikedepalma.com/heroku-create-no-ssh-public-key-found-in-sshid_rdsa-pub
Herokuへプッシュ
$ git push heroku master $ heroku open
出て来たブラウザに hello/world の URLを追加したら出た!
下からログインしてアクセスしてもいける。
https://api.heroku.com/myapps
ローカルで作った db も下のコマンドで migrate できる
heroku rake db:migrate
Heroku 上でDBまで簡単に作れてしまうとは。
サーバ持ってなくても Railsアプリを作れるようになるのは素晴らしいかも!