Rails再学習は、ドットインストールの講習は見たことがあったので本を買おうと思ったけど、WEBで公開されているRailsチュートリアル(http://railstutorial.jp/)をやってみる事にした。

で、Railsの環境やgitの環境は既にあるので、herokuの準備をする。こんだけ趣味でrubyを触っているのに実はherokuは初めてだったりする。というか外に公開するほどのプログラムを書いた事が無いのだけど。

とりあえず、heroku公式(https://www.heroku.com/)で会員登録をしてくる。登録が済んだら、heroku toolbeltをインストールする。Ubuntu(Vagrant)なので、wgetしてくる。

$ wget -qO- https://toolbelt.heroku.com/install-ubuntu.sh | sh

そしたら、herokuではデフォルトのdbがPostgresSQLなので、Gemfileに本番(heroku)用のgemを書く。その時に、開発環境で使うdbはsqlite3だよって編集する。

group :development do
  gem 'sqlite3'
end

group :production do
  gem 'pg', '0.15.1'
  gem 'rails_12factor', '0.0.2'
end

で、Gemfile.lockにも書き込みたいので、bundle install --without productionする。できたらgit statusでGemfileとGemfile.lockが更新されているのを確認し、それらをgit add .->git commit->git push

で、とりあえずデプロイしてみる。

// herokuに登録appを作成(というか登録)する。
// この時に表示されるURLがデフォルトのURLになるので注意
// アプリケーションの名前はheroku全体の中でユニークな名前で
$ heroku create APPNAME

// git pushする。push先をheroku masterに
$ git push heroku master

herokuではRailsのindexはrails newしただけでは表示されないので、エラーっぽいページだが、これだけでherokuにデプロイできた。

……。

うわぁー、超簡単なんだけど……。なんで今までheroku触らなかったんだよ……。こりゃみんな使いたくなるわけだ。

Rails3の時代にどうしてもデプロイが辛くて諦めた事があるので、この時にheroku触っておけば。。。と悔やまれる。まあその時の経験が少しでも活きてるからいいんだけど。

ちなみにheroku createしたAppを他のPCでデプロイする場合は

$ heroku git:remote --app APPNAME

これで作ったAppをデプロイできるようになりました。RailsだけじゃなくてSinatraとかもデプロイできるかやってみよ。

herokuの詳しい情報や料金に関して