準備:Herokuログイン
Herokuのサイトに登録して、
ターミナルにてCLIでHerokuにログイン
$ heroku login
準備:Gemfile修正
- production(Heroku)で
sqlite3
を利用しないように修正しておく - production(Heroku)で
pg
を利用するように修正しておく
Gemfile
# Use sqlite3 as the database for Active Record
gem 'sqlite3', group: [:development, :test]
gem 'pg', group: :production
準備:git commit
ソースをコミットしておく
# アプリのディレクトリに移動する
$ cd rails-app
# 初期化
$ git init
# ディレクトリ配下のファイルをコミット対象にする
$ git add *
# コミット
$ git commit -m "Release to heroku"
Herokuアプリ作成
Herokuアプリを作成して、URLとGitリポジトリを取得する
-
<アプリ名>
は省略可能。省略するとアプリ名が自動で払い出される - 払い出されたURLがHerokuアプリのURL、Gitリポジトリとなる
# アプリのディレクトリに移動する
$ cd rails-app
# Herokuアプリを作成する
$ heroku create <アプリ名>
Creating app... done, ⬢ xxxxx-xxxxx-xxxxx
https://xxxxx-xxxxx-xxxxx.herokuapp.com/ | https://git.heroku.com/xxxxx-xxxxx-xxxxx.git
リモートリポジトリの確認・登録
リモートリポジトリherokuが作成されてることを確認する
# リモートリポジトリを確認
$ git remote
heroku
リモートリポジトリherokuが存在しない場合は、heroku create <アプリ名>
コマンド実行時に払い出されたgitリポジトリをリモートリポジトリheroku
として登録する
# リモートリポジトリを追加
$ git remote add heroku https://git.heroku.com/xxxxx-xxxxx-xxxxx.git
補足:ローカルリポジトリ作成(
git init
)後にheroku create
コマンドを実行した場合はリモートリポジトリherokuが自動で追加されますが、heroku create
コマンド実行後にローカルリポジトリを作成(git init
)した場合は、手動でリモートリポジトリherokuを追加する必要があります。
デプロイ
ローカルのmaster
ブランチをリモートリポジトリheroku
へpushする
$ git push heroku master
...
To https://git.heroku.com/mighty-beyond-37933.git
* [new branch] master -> master
アクセス確認
heroku open
コマンドを実行すると自動でブラウザが開き、HerokuアプリのURLにアクセスする
$ heroku open
または、HerokuアプリのURLにブラウザでアクセスする
https://xxxxx-xxxxx-xxxxx.herokuapp.com/