はじめに
前提
個人的な備忘録
ruby 2.6.5 / Rails 6.0.3.4 / Mysql2
手順
rails_12factor インストール
Gemfile
group :production do
gem 'rails_12factor'
end
bundle install => master にcommit
#追記
こちらのGemのインストールはRails5以降では不要のようです。
すでにメンテナンスがされていないと思われるGemをインストールしておくのは好ましくないので、不要なGemはアンインストールしておいた方がよさそうです。
参考URL
【初心者必見】RailsアプリをHerokuに公開するのにrails_12factorは不要
Herokuにアプリを作成
ターミナル
% heroku create アプリ名
アプリ名は _(アンダーバー)使えない
Herokuにアプリができているか確認
ターミナル
% git config --list | grep heroku
Mysqlの設定
clearDBアドオンを行う
ターミナル
% heroku addons:add cleardb
これによりDBがHerokuのデフォルトDB(PostgreSQL)からMysqlに変更
Mysql2(Gem)への対応
URLを再設定する
ターミナル
% heroku_cleardb=`heroku config:get CLEARDB_DATABASE_URL`
上記で変数を定義
ターミナル
% heroku config:set DATABASE_URL=mysql2${heroku_cleardb:5}
URLの設定が完了
環境変数の設定
ターミナル
% heroku config:set RAILS_MASTER_KEY=`cat config/master.key`
↓ 確認方法
ターミナル
% heroku config
Herokuにアプリをpush
ターミナル
% git push heroku master
マイグレーションを実行
ターミナル
% heroku run rails db:migrate
公開を確認
ターミナル
% heroku apps:info
エラーの確認
ターミナル
% heroku logs --tail --app アプリ名
Herokuのアップデート(必要に応じて)
Warning: heroku update available が出たときの対処
ターミナル
% heroku update
おわりに
画像がたぶん使えなくなっているのでAmazonS3の設定が必要かも
✔︎