こんな人に見て欲しい
Herokuへのデプロイがうまくできない方へ
(本番環境のデータベースはPostgleSQL)
経緯
【学習メモ】28/70day 280.5/700hour
— じーこ@目指せ筋肉エンジニア🐯 (@jiko797torayo) 2018年9月21日
スクール通い出して早4週間
『デプロイできない…→できた!→viewが表示されない…→DB無いからだ!→DB作れない…→DB設定おかしいからだ!→DBできた!viewも表示された!きたー!』
っていうのをチームで経験できたのが一番の思い出https://t.co/24hV8F0ij6
ということで具体的にどうやったのか記録に残しておきます!
環境
- macOS High Sierra
- ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-darwin17]
- Rails 5.0.7
手順
①本番環境でPostgleSQLを使用するよう設定する。
★Gemfileに以下のコードを記入する。
gem 'pg', 'バージョン', group: :production
# 本番環境でpostgresqlを使用するよう設定する。
gem 'mysql2', 'バージョン', group: [:development, :test]
# 上記に伴い、本番環境以外ではmysql2を使用するよう設定する。
# mysql2と記入している理由は元々mysql2を使用していたため。
# sqlite3を使用しているならsqlite3を記入する。
★gemをインストールする。
$ bundle install
②database.ymlを設定する。
★DATABASE_URLが表示されるか確認する。
$ heroku config
DATABASE_URL: postgres://〜〜〜
※DATABASE_URLが表示されなければ以下のコマンドでアドオンを追加してから、もう一度『heroku config』を実行する。
$ heroku addons:create heroku-postgresql:hobby-dev
★database.ymlに以下のコードを記入する。
production:
<<: *default
adapter: postgresql
database: db/production.postgresql
url: <%= ENV['DATABASE_URL'] %>
# 環境変数DATABASE_URLを参照するよう設定する。
③Heroku上にアプリを作成する。
★Herokuにログインする
$ heroku login
# emailとpasswordを入力する。
★Heroku上にアプリを作成する。
$ heroku apps:create アプリ名
★リモートリポジトリを確認する。
$ git remote -v
# heroku上に正しくアプリを作成できていれば下記が表示される
heroku https://git.heroku.com/アプリ名.git (fetch)
heroku https://git.heroku.com/アプロ名.git (push)
★Herokuへpushする。
$ git push heroku master
★マイグレーションを実行する。
$ heroku run rake db:migrate
おわりに
以上、Herokuにデプロイする方法(本番環境のデータベースはPostgleSQL)でした。
少しでも参考になればと思います。
『もっと簡単にできる方法あるよーーー!』『ここ間違っているよーーー!』等ございましたらご連絡いただけると幸いです。
※参考ページ
https://devcenter.heroku.com/articles/git
https://qiita.com/shou1012/items/bf55a185920e717f4011
https://qiita.com/NaokiIshimura/items/550ca82e8e57aaea5582