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

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

Contents

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
ほんとにさわっただけなので、きちんと公開するにはいろいろと細かい部分があると思われます。

補遺

Sqale