スポンサーリンク
概要
railsアプリをherokuにデプロイするまでのメモ。
スポンサーリンク
環境及び前提
Mac OS 10.15.4
Ruby 2.6.3p62
Rails 6.0.2.2
事前にherokuアカウントを作成済
gitとheroku CLIをインストール済
heroku loginでログインを行なっている
スポンサーリンク
手順
アプリの作成
1 2 3 4 |
heroku create <アプリ名> Creating ⬢ <アプリ名>... done https://<アプリ名>.herokuapp.com/ | https://git.heroku.com/<アプリ名>.git |
でアプリが作られる。
remoteレポジトリを追加
git remote add heroku https://git.heroku.com/<アプリ名>.git
Herokuのアドオンを追加
heroku configでDATABASE_URLが表示されない場合にはアドオンを追加する。
heroku addons:create heroku-postgresql:hobby-dev
アプリの設定
database.ymlの修正
ローカル環境とherokuで設定が異なるので分離。
ローカルはポートやアカウントを指定。
herokuはURLで指定すると、そこにアカウントやDB名が含まれているので指定が不要。
heroku configでDATABASE_URLで設定されたURLを記載する。
今回は.envファイルに設定を記載して実施している。
参考:https://pikawaka.com/rails/dotenv-rails
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
default: &default adapter: postgresql encoding: utf8 # For details on connection pooling, see Rails configuration guide # https://guides.rubyonrails.org/configuring.html#database-pooling pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> development: <<: *default database: dev_suruga_db username: test password: password host: localhost port: 15432 test: <<: *default database: test_suruga_db username: test password: password host: localhost port: 15432 production: <<: *default url: <%= ENV['PROD_DATABASE_URL'] %> port: 5432 |
デプロイ
git push heroku master
でデプロイ。
rails db:migrateやseedでデータを作成する。
データのクリア
rails db:resetなどでデータを消したい場合には
heroku pg:reset -a アプリ名
で実施しないといけない。(確認用のコマンドをその後打ち込む)
その後に rails db:migrateを実施。
参考:https://qiita.com/yusuke_s221/items/cefb1808fdf481e6e445
環境変数の適応
.envファイルで環境変数を使用している場合には下記を実行して反映する。
1 2 |
heroku plugins:install heroku-config heroku config:push |
Redisを使う場合は下記注意