mysqlを使ったRailsアプリをHerokuにデプロイする流れ

1. Herokuが使える様にする

作ったRailsアプリケーションのディレクトリでHerokuが使える様に設定

Herokuにターミナルでログイン

$ heroku login

Heroku上でアプリを作成

$ heroku apps:create [app_name]

Herokuのリモートリポジトリを確認

(git.herokuにコードが上がる様になっている状態)

$ git remote -v

これで

heroku https://git.heroku.com/app_name.git (fetch)
heroku  https://git.heroku.com/app_name.git (push)
origin  git@github.com:shou1012/app_name.git (fetch)
origin  git@github.com:shou1012/app_name.git (push)

と出れば良い

もしapp_nameが一致してなかったら

$ heroku git:remote -a [APP_NAME]

で変更可能

2. HerokuのDBを設定する

DBを追加する

$ heroku addons:create cleardb:ignite

Herokuアプリ上でDB情報の環境変数を設定する

Heroku上での変数を確認する

$ heroku config
# 以下の書式で出てくる
mysql://[username]:[password]@[hostname]/[db_name]?reconnect=true

変数を設定する

$ heroku config:add DB_NAME="[db_name]"
$ heroku config:add DB_USERNAME="[username]"
$ heroku config:add DB_PASSWORD="[password]"
$ heroku config:add DB_HOSTNAME="[hostname]"
$ heroku config:add DB_PORT="3306"

設定内容の確認

$ heroku config

なお、ここでCLEARDB_DATABASE_URLやDATABASE_URLがmysql://で始まっていることがあるのでmysql://に変える必要が出てくる時がある。

$ heroku config:set CLEARDB_DATABASE_URL='mysql2://~~~~~'

で変更できる

3. デプロイする

ローカルリポジトリをHerokuへpushする

$ git push heroku master

Heroku上でのDBマイグレーション

$ heroku run rake db:migrate

アプリケーションの情報を確認

$ heroku apps:info

ここで出てくるWeb URLが完成したURL

参考にしたサイト

Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.