Ubuntu 14.04 から heroku toolbelt で rails アプリをデプロイする

シェアする

rails 再開しようとしたけど殆ど忘れてたのでチュートリアル頭からざっと読みつつ手動かしてます。で、前回は飛ばしていた heroku の項目もちょっと触ってみようかなと思ってチュートリアルのアプリを heroku にデプロイしてみた。というかこの内容 rails 関係ないな。

第1章 ゼロからデプロイまで | Rails チュートリアル

Sponsored Links

heroku クライアントのインストール

heroku へデプロイする際には heroku のクライアントをインストールする必要がある。

自分の使用している Ubuntu 14.04 LTS であれば以下のような感じ。ソレ以外であれば Heroku Toolbelt のサイトからダウンロードしよう。

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

これで heroku コマンドが使えるようになる。

heroku にデプロイする

プロジェクトは git で管理する必要がある。というのも heroku へデプロイする際に git を使用するからだ。チュートリアルにあるように git init; git add .; git commit とかしてれば大体どうにかなる。

heroku コマンドがインストールできたら heroku にログインする。

$ heroku login
Enter your Heroku credentials.
Email: hoge@example.com
Password (typing will be hidden):
Your Heroku account does not have a public ssh key uploaded.
Found an SSH public key at /home/ryomatsu/.ssh/id_rsa.pub
Would you like to upload it to Heroku? [Yn] y
Uploading SSH public key /home/ryomatsu/.ssh/id_rsa.pub... done
Authentication successful.

heroku のユーザ登録時に使用したメールアドレス及びパスワードでログインしよう。途中公開鍵のアップロードを求められるので既にアレばそれを、なければこの時点で作ると良い。

認証が完了したらリポジトリを作成する。

$ heroku create
Creating afternoon-reaches-9404... done, stack is cedar-14
https://afternoon-reaches-9404.herokuapp.com/ | git@heroku.com:afternoon-reaches-9404.git
Git remote heroku added

出力されたログにもあるように git remote にも自動で登録される。なのであとは以下のコマンドで heroku へプッシュすれば良い。

$ git push heroku master

これだけだとデータベースが無いので動かない。ローカルでは sqlite だが heroku では postgresql を使用するよう修正しよう。

まずは config/database.yml の設定

# config/database.yml の production 欄を heroku のダッシュボード内に記述のある postgresql の設定値を入れる
production:
   adapter: postgresql
   encoding: utf8
   database: DATABASE
   port: 5432
   username: USERNAME
   password: PASSWORD

設定したら コミットし先ほどと同じように git push heroku master する。

設定できたら rake コマンドでデータベースを作成する。

$ heroku run rake db:migrate
Running `rake db:migrate` attached to terminal... up, run.8844
Migrating to CreateUsers (20141114065426)
== 20141114065426 CreateUsers: migrating ======================================
-- create_table(:users)
   -> 0.3776s
== 20141114065426 CreateUsers: migrated (0.3779s) =============================

Migrating to CreateMicroposts (20141114071029)
== 20141114071029 CreateMicroposts: migrating =================================
-- create_table(:microposts)
   -> 0.0737s
== 20141114071029 CreateMicroposts: migrated (0.0739s) ========================

この状態で heroku create した際に出力される URL へアクセスしたらデプロイしたアプリが表示される。

Sponsored Link

シェアする

フォローする