プログラマ憧れプログラマ日記

2010-02-07

HerokuとRailsで手早くWebサイトを作る

はじめに

Herokuを使ってstiffslack-watcherというサイトを作りました。

http://stiffslack-watcher.com/

f:id:nobyu:20100207015716p:image:h280

Herokuとは

Railsアプリホスティングサービス。DBが5MBまでなら無料で使えて、さらに日次のCronが使えたり、Gitデプロイできたりと何かと使い勝手がよい。手早くRailsアプリを作りたい時にオススメ。

興味がある人は、Herokuがどのような構成で運用されているかを見てみるのも良いかもしれない。

Heroku | How it Works

http://heroku.com/how/architecture

Herokuクイックスタート

前提条件

RubyRailsも使えるようにしておくこと。あとは、Herokuを使うにはGitが必要。以下のサイトでも見ながらGitを使える様にしておく。

Max OS X

http://help.github.com/mac-git-installation/

Windows

http://code.google.com/p/msysgit/

アカウントの作成

下記のURLから、メールアドレスを入力して、送られてくるメールから続けてゴニョゴニョしてアカウントを作成。ログインする。

http://api.heroku.com/signup

heroku gemインストール

アプリケーションを作成したり、デプロイしたりするにはherokuというgemを使います。なのでまずはherokuのインストールから。

$ sudo gem install heroku

下のような感じで、アカウント作成時に使ったメールアドレスパスワードを事前に設定しておくと、デプロイ時などにイチイチ聞かれないので便利。

$ heroku keys:add
Enter your Heroku credentials.
Email: joe@example.com
Password: 
Uploading ssh public key /Users/joe/.ssh/id_rsa.pub
新しくアプリケーションを作る

例としてheroku-appという名前でRailsアプリケーションを作ります。

$ rails heroku-app

次にこのRailsアプリケーションGitの管理下におきます。

$ cd heroku-app/
$ git init
$ git add .
$ git commit -m "first commit"

さらに、herokuコマンドを使ってHeroku上にアプリケーションを作成します。

$ heroku create

ここまでやると、HerokuのWebサイトでMy Appsのページでアプリケーションが作成されていることが確認できます。この時点ではアプリケーションの名前が適当なものになっていますが、これは後ほど変更できますのでご安心を。

Herokuにリリース

Herokuへのリリースはgitを使います。しばらく待つと、リリースは完了です。簡単ですね!

$ git push heroku master

動いているか確認しましょう。Herokuにログインして、My Appsから今回作成したサイトを選択してHeroku URLという欄にURLが記載されています。今回は空のRailsアプリを作ったのでいつものWelcome aboardの画面が表示されればちゃんとリリース出来ています。

これからの開発サイクル

今後の開発サイクルも、gitにcommitしてherokuにpushするだけでよい。例えば…

$ script/generate scaffold user name:string age:integer
$ rake db:migrate
$ git add .
$ git commit -m "add user scaffold"
$ git push heroku master

これだけでOK。

おわりに

これだけ簡単にRailsアプリを公開できちゃう訳です。思い立ったら即行動、なにより動き始める事が超重要なサービス開発の世界にはもってこいのホスティングサービスではないでしょうか?

おまけ 作ろうと思った経緯

名古屋にある良質レーベルstiffslack records。ここのwebshopのセレクトは素晴らしいのだけど、すべての内容が1ページにまとまっていて膨大な情報量になってしまっていて、失礼ながら少し見づらい。ページが大きすぎるせいか、iPhoneで見るとSafariが落ちてしまうこともある。

といった事から、ここ数年間よく利用させて貰っているこのサイトを、もっと軽く、使いやすくしたい、という思いで作る事に決めた。

あとは、WEB PRESS DB Vol.54を読んだことに触発された。

この号にWebサービス即日開発というyusukebeさんが書かれた項があって、純粋に面白そうと感じたことと、鋭意学習中のRuby on Railsで、手頃なサイトを作ってみたかったという事もあった。

stiffslackさんにはこんなサイト作りましたってメールをしてみたものの、返事がこなかったのでちょっと寂しいけど*1、まぁいいか。いつも利用させて貰っている大好きなレーベルなので、少しでも人に知って貰えると嬉しいな。

*1:2010/02/11 追記 stiffslackさんから返事頂きました!俄然やる気出てきた!モチベーションが続く限り、今後も地味に改修を続けます。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証