サイトアイコン Lonely Mobiler

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

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

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

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

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

Heroku Toolbelt

自分の使用している 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
モバイルバージョンを終了