Mac で heroku を触ってみる
d:id:nshibazaki:20110723 の続きです。
今日は、公式サイトのGetting Started の"Getting Your App on Heroku" のところをがんばります。
主に、使い方
サンプルアプリの作成
デプロイする前に、サンプルアプリの作成を行います。
ここでは簡単な、Message Board を作ります。
以下のコマンドを実行してください。
$ rails new myapp $ rails generate scaffold message name:string text:string
それでは、本題であるデプロイ作業に移ります。
デプロイ手順
ここでは、以下のドキュメントを参照しています。
Getting Started with Heroku (Getting Your App on Heroku)
Getting Started on Heroku | Heroku Dev Center]
ここで説明するデプロイ手順は、以下のような流れになります。
- Rakefileを修正する。
- 1. Track your application with Git
- 2. Set up your SSH keys
- 3. Create your Heroku application
- 4. Push your application to Heroku
- 5. Bootstrap your database
Rakefileを修正する。
はじめに、"Getting Started with Heroku" には書いていませんが、Rakefile をいじらないと、heroku rake db:migrate に失敗します。
以下のように、Rakefile に require 'rake/dsl_definition' を追記します。
require File.expand_path('../config/application', __FILE__) require 'rake' require 'rake/dsl_definition' # (以下、省略)
参考URL:http://bit.ly/l7OZc1
1. Track your application with Git
git コマンドを実行し、アプリをgit のローカルリポジトリに追加します。
$ cd PATH/TO/MY_APP $ git init $ git add . $ git commit -m "new app"
2. Set up your SSH keys
以下を参照し、git のSSH のpublic key を設定を行います。
※ github は使わないので、ssh-keygen の実行だけすればよいです。
「sshのpublic key の生成方法、git の設定方法」(github)
Set up Git - GitHub Help (Mac 向け)
3. Create your Heroku application
heroku 側に、アプリを作成します。(git remote repository とかを含む)
ちなみに、heroku createは、初回実行時に、ユーザ名とかssh public key のkeypassとかを質問します。
入力すると、~/.heroku/credentials に、それらの情報が保存され、次回から質問されなくなります。
$ heroku create
コマンドを実行すると、Heroku のMyApp画面にアプリが追加されています。
Web URL は、heroku info コマンドでも確認できます。
$ heroku info === Web URL: http://severe-xxxxx-???.heroku.com/ Git Repo: git@heroku.com:severe-xxxxx-???.git Dynos: 1 Workers: 0 Repo size: 5M Slug size: 4M Stack: bamboo-mri-1.9.2 Data size: (empty) Addons: Basic Logging, Shared Database 5MB Owner: myname@gmail.com
また、heroku open コマンドを実行すると、このWeb URL を開いてくれます。
4. Push your application to Heroku
アプリをデプロイします。
$ git push heroku master
5. Bootstrap your database
$ heroku rake db:migrate $ heroku open # デプロイしたアプリをブラウザで表示する
これで、デプロイは完了です。
次の予定
次は、Getting Started with Rails 3.x on Heroku | Heroku Dev Center にあるコマンドをいじってみようと思います。
現状は、RDBにsqlite3 を使っています。なので、RDBにpostgresql のshared db を使う方法を勉強します。
また、ログとかを参照したりするコマンドをいろいろ試してみます。