[Ruby on Rails 3, Ruby on Rails 4] Heroku: サンプルプロジェクトをデプロイするまで

有名PaaS。どんな雰囲気かさわって試す。

[markdown]

## Heroku のユーザー登録

http://api.heroku.com/signup

heroku1

以降、表示に従い進める。

## Heroku Toolbelt のインストール

ファイルをダウンロードし、ローカルMacにインストールする。

## heroku login

“`
% heroku login
Enter your Heroku credentials.
Email: foo@gmail.com
Password (typing will be hidden):
Found the following SSH public keys:
1) bitbucket_rsa.pub
2) github_rsa.pub
3) id_rsa.pub
Which would you like to use with your Heroku account? 2
Uploading SSH public key /Users/****/.ssh/github_rsa.pub… done
Authentication successful.
“`

~/.ssh/config の内容を見て、SSH public key の登録をすすめてくれる。
これでID/PWなしで操作が可能になる。
ここではgithubと同じキーを利用した。

## プロジェクトをherokuに登録する

プロジェクトディレクトリで以下を実行する。

“`
% heroku create
Creating protected-mesa-2007… done, stack is cedar
http://protected-mesa-2007.herokuapp.com/ | git@heroku.com:protected-mesa-2007.git
Git remote heroku added
“`

表示通り、git remote が登録され、URLにアクセス可能となる。

“`
% heroku open
“`

heroku2

## プロジェクトをデプロイする

heroku に push することでデプロイできる。

“`
% git init
% git add .
% git commit – m ‘first commit’
% git push heroku master
“`

下記のような heroku コマンドや管理ツールから、いろいろ操作が可能なようです。

### heroku コマンド

“`
% heroku help
Usage: heroku COMMAND [–app APP] [command-specific-options]
Primary help topics, type “heroku help TOPIC” for more details:
addons # manage addon resources
apps # manage apps (create, destroy)
auth # authentication (login, logout)
config # manage app config vars
domains # manage custom domains
logs # display logs for an app
ps # manage dynos (dynos, workers)
releases # manage app releases
run # run one-off commands (console, rake)
sharing # manage collaborators on an app
Additional topics:
account # manage heroku account options
certs # manage ssl endpoints for an app
drains # display syslog drains for an app
fork # clone an existing app
git # manage git for apps
help # list commands and display help
keys # manage authentication keys
labs # manage optional features
maintenance # manage maintenance mode for an app
pg # manage heroku-postgresql databases
pgbackups # manage backups of heroku postgresql databases
plugins # manage plugins to the heroku gem
regions # list available regions
stack # manage the stack for an app
status # check status of heroku platform
update # update the heroku client
version # display version
“`

### 管理ツール

https://dashboard.heroku.com/apps
ほんとにさわっただけなので、きちんと公開するにはいろいろと細かい部分があると思われます。

## 補遺

> * [Ruby on Rails 4 のアプリを Heroku で公開する | Good Design and Great Hack](http://friendly.gehirn.ne.jp/2013/05/28/125.html)

### Sqale

> * [【初心者向け】Mac OSX10.8(Mountain Lion)で Ruby on Railsを動かすための5ステップ « pplog.org](http://pplog.org/?p=2155)

[/markdown]