実践「Heroku」をセットアップしてサンプルアプリを動かそう

前回は円滑なコミュニケーションを実現するために使用したyouRoomとPivotalTrackerについてご紹介させて頂きました。今回は「動くソフトウェア」を維持するために活躍する2つのツール、HerokuとTestFlightのうちHerokuに焦点を当てて、セットアップ方法から実際にサンプルア

西見 公宏(にしみまさひろ、@mah_lab)

2012年6月21日 20:00

前回は円滑なコミュニケーションを実現するために使用した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

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30