LoginSignup
25
25

More than 5 years have passed since last update.

gitコマンドによる、herokuのセットアップ

Last updated at Posted at 2015-04-23

手順紹介

1.リポジトリの作成

railsアプリケーションのルート・ディレクトリで以下のコマンドを打つ。

ターミナル
$ git init

2.管理対象に含めたくないファイルを.gitignoreで除外

Gitはすべてのファイルの変更履歴を管理するが、管理対象に含めたくないRailsのログファイルなどは管理対象から除外する必要がある。

ルート・ディレクトリにある.gitignoreの中身を以下のように変更

.gitignore
# Ignore bundler config.
/.bundle

# Ignore the default SQLite database.
/db/*.sqlite3
/db/*.sqlite3-journal

# Ignore all logfiles and tempfiles.
/log/*.log
/tmp

# Ignore other unneeded files.
doc/
*.swp
*~
.project
.DS_Store
.idea
.secret

3.railsをGitに追加、コミット

ルート・ディレクトリで以下のコマンドを実行

ターミナル
$git add .

ここで「.」はカレントディレクトリを示す。
これで、カレントディレクトリ以下の全てのファイルをステージングエリアに追加できる。git statusコマンドを利用すれば、現在ステージングエリアに居るファイルを知ることができる。

変更を保存(commit)する場合は、commitコマンドを利用する。

ターミナル
$ git commit -m "Initialize repository"

-mフラグは、コミットメッセージをその場で追加する場合に使用する。

4.githubにリモートリポジトリを作成、ローカルのリポジトリをプッシュ

ここまでで、gitを利用したローカルリポジトリの作成は終わりました。続いて、リモートリポジトリの作成と、そこへのpushを行います。

railsのルート・ディレクトリから以下のコマンドを実行することで、リモートリポジトリを追加することができます。

ターミナル
$ git remote add origin https://github.com/<githubのusername>/first_app.git

続いて以下のコマンドで、railsアプリケーションのローカルリポジトリを、先ほど作ったリモートリポジトリに同期(push)します。

ターミナル
$ git push -u origin master

※このコマンドが上手くいかない場合は、githubのページから手動でリモートリポジトリを作成しましょう。

5.herokuにデプロイする

railsアプリケーションのGemfileに、下記を追記します。

Gemfile
group :production do
  gem 'pg', '0.15.1'
  gem 'rails_12factor', '0.0.2'
end

これは、herokuで利用するデータベースpostgreを利用するためです。

rails_12factorは、herokuにおいて画像やスタイルシートなどの静的なアセットを利用するために使用します。

続いて、以下のコマンドを実行してgemfile.lockを更新し、pgrails_12factorの情報を追記しておきます。

ターミナル
$ bundle install --without production

そして、それをコミットしておきます。

ターミナル
git commit -a -m "Update Gemfile.lock for Heroku"

続いて、下記のサイトからherokuのアカウントを登録してください。

登録が済んだら、続いて以下のサイトからheroku toolbeltというアプリケーションをダウンロードし、インストールしてください。こちらは、コマンドラインからherokuを利用するために必須のアプリケーションになります。

上記アプリケーションのインストールが済んだら、railsアプリのルート・ディレクトリから以下のコマンドを実行します。

ターミナル
$ heroku login

アドレスとパスワードを要求されるので、登録時のものを入力してください。

その次に以下のコマンドでherokuにアプリケーションを新規作成します。この時点で、暫定的なアプリケーションのURLが生成されます。

ターミナル
$ heroku create

herokuのアプリにローカルリポジトリからpushします。

ターミナル
$ git push heroku master

最後に、下記コマンドでマイグレーションファイルを実行すれば、アプリケーションを見ることができます。

ターミナル
$ heroku run rake db:migrate

※rake db:seedを行いたい場合は、この後heroku run rake db:seedコマンドを実行します。

※もしもこれで上手くいかなかったら、以下のコマンドを順番に試してください。

ターミナル
$ rake assets:precompile
$ git add .
$ git commit -m "Add precompiled assets for heroku"
$ git push heroku master

これでもエラーが怒る場合は、heroku logsコマンドでエラーを確認してください。

25
25
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
25
25