前回は円滑なコミュニケーションを実現するために使用したyouRoomとPivotalTrackerについてご紹介させて頂きました。
今回は「動くソフトウェア」を維持するために活躍する2つのツール、HerokuとTestFlightのうちHerokuに焦点を当てて、セットアップ方法から実際にサンプルアプリケーションを動かすまでを説明してまいります。
Herokuとは
Heroku(http://www.heroku.com/)は様々な言語で作成された、Webアプリケーションを簡単にホスティングすることができるクラウドアプリケーションプラットフォームです。例えばRuby、Node.js、Clojure、Java、Python、Scalaといった言語で作成したアプリケーションを簡単にホスティングすることができます。
簡単に、と申しましたが、ちょっとしたアプリケーションであれば
$ heroku create arabiki
$ git push heroku master
という2つのコマンドを叩くだけで、http://arabiki.herokuapp.com/ というURLでアプリケーションが稼働するようになります(注:アプリケーションはGitでバージョン管理されている必要があります)。
Herokuそのものの詳細なご紹介については私と同じくソニックガーデンに所属する安達(@interu)が執筆した「ARCによるWebアプリの新しいつくり方:第3回 クラウドプラットフォーム『Heroku』の活用」に譲りますが、その時と比べて、動くアプリケーションの数は大幅に増えています。
この記事が公開された2011年3月23日時点では、Herokuで動くアプリケーションが約10万5000だったのに対し、この記事を執筆している2012年6月11日現在では、約183万ものアプリケーションがHeroku上で稼働しています。なんと、この1年で約18倍にも伸びているのです。
このことから、
- 分散型バージョン管理システムであるGit利用によるデプロイ容易性
- アドオンと呼ばれる追加機能を使用することによる拡張容易性
- オープンかつスタンダードな技術を利用している(ノン・ベンダーロックイン)
といった特徴が、多くの技術者の支持を集めたことが読み取れます。もはやHerokuはPaaSのデファクトスタンダードなんですね。
それでは、早速簡単なRuby on RailsアプリケーションをHerokuにデプロイしてみたいと思います。
簡単なRuby on Railsアプリケーションの作成
さて、簡単なRuby on Railsアプリケーションを作成するにあたって、Rubyのセットアップ等を進める必要があります。
- Windowsをご使用の方
- RailsInstaller(http://railsinstaller.org/)を使用すると、Windows特有の罠にはまることなく、比較的簡単にRails環境を構築することができます。ページ一番下にあるRECENT RELEASESから「Windows (Ruby1.9)」をクリックし、インストールを実行してください。
- 本稿執筆時のRailsInstallerのバージョンは2.1.0で、インストーラを実行すると以下のソフトウェアがインストールされます。
| Ruby 1.9.3 p125 |
| Rails 3.2 |
| Bundler 1.0.18 |
| Git 1.7.6 |
| Sqlite 3.7.3 |
| TinyTDS 0.4.5 |
| SQL Server support 3.3.3 |
| DevKit(https://github.com/oneclick/rubyinstaller/wiki/Development-Kit) |
- MacOSXをご使用の方
- RailsInstaller(http://railsinstaller.org/)を使用しても良いのですが、Windowsのような罠は少ないので、手動で設定していきたいと思います。皆さまの環境構築の参考にしてください。
- なお、以降の手順の実行のためには、事前にXcode(Macの開発環境)のセットアップが必要です。
- MacOSX 10.7(Lion)をお使いの方
-
- MacAppStoreよりXcodeをインストールして下さい。
- インストール後、Xcodeを起動し、「Xcode > Preferences... > Downloads > Components」よりCommand Line Toolsの右側の「Install」ボタンをクリックし、コマンドラインの開発環境をセットアップします。
- ターミナル上で「gcc -v」を実行してバージョン番号が返ってきたら、セットアップは無事完了しています。
- MacOSX 10.6(Snow Leopard)をお使いの方
-
- Downloads for Apple Developersより「Xcode 4.2 for Snow Leopard」をダウンロードし、Xcodeのパッケージインストーラを実行して下さい。
- インストーラの途中の「Installation Type」にて、「System Tools」と「UNIX Development」にチェックを入力し、「Continue」をクリックしインストールを続行します。
- ターミナル上で「gcc -v」を実行してバージョン番号が返ってきたら、セットアップは無事完了しています。
(MacOSXの方向け)Ruby環境構築
MacOSXのパッケージ管理システムとしてMacPorts(http://www.macports.org/)とHomebrew(http://mxcl.github.com/homebrew/)が有名ですが、今回はHomebrewを使用します。まだインストールされていない方は以下のコマンドをターミナルで実行し、Homebrewをインストールしてください。
$ /usr/bin/ruby -e "$(/usr/bin/curl -fsSL https://raw.github.com/mxcl/homebrew/master/Library/Contributions/install_homebrew.rb)"
→参考:Homebrew Installation(Github)
インストールが完了すると brew コマンドを使用できるようになります。以下のコマンドをターミナルで実行してみてください。バージョン番号が返るはずです。
$ brew -v
0.9
次に、Rubyのバージョンをシンプルに管理できるrbenvという仕組みをインストールします。プロジェクトによってRuby1.8系を使用したり、1.9系を使用したりということがあるので、Rubyのバージョン管理の仕組みは重要です。以下のコマンドを実行してください。
$ brew install rbenv
$ brew install ruby-build
インストールが完了すると rbenv コマンドを使用できるようになります。以下のコマンドをターミナルで実行し、実行確認をしてみてください。
$ rbenv
rbenv 0.2.1
usage: rbenv <command> [<args>]
Some useful rbenv commands are:
commands List all rbenv commands
rehash Rehash rbenv shims (run this after installing binaries)
global Set or show the global Ruby version
local Set or show the local directory-specific Ruby version
shell Set or show the shell-specific Ruby version
version Show the current Ruby version
versions List all Ruby versions known by rbenv
which Show the full path for the given Ruby command
whence List all Ruby versions with the given command
See 'rbenv help <command>' for information on a specific command.
For full documentation, see: https://github.com/sstephenson/rbenv#readme
rbenvコマンドを用いて、MacOSX標準で搭載されているRubyとは別に、Ruby on Railsの開発で使っていくRubyをインストールします。以下のコマンドをターミナルで実行してください。
$ rbenv install 1.9.3-p125 # ruby1.9.3p125をインストール
$ rbenv global 1.9.3-p125 # 標準で使用するRubyのバージョンを設定
$ rbenv rehash
これでRuby on Railsの開発で使うためのRubyがインストールされました。
$ ruby -v
ruby 1.9.3p125