Dragon Arrow written by Tatsuya Nakaji, all rights reserved animated-dragon-image-0164

Rails5.2 Herokuにデプロイ

updated on 2019-01-13

イメージ

Rails5.2 Herokuにデプロイ

Gemfileを編集
group :production do
 gem 'pg'
end
group :development, :test do
 gem 'sqlite3'
end
$ bundle install

database.ymlは変更なし(Herokuが勝手にPostgreSQLで読み替えてくれる)

default: &default
adapter: sqlite3
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
timeout: 5000

development:
<<: *default
database: db/development.sqlite3

# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
<<: *default
database: db/test.sqlite3

production:
<<: *default
database: db/production.sqlite3


herokuの環境変数にmaster_keyを設定(rails5.2以降ならconfig/master.keyに生成されている。これをコピペして設定)
heroku config:set RAILS_MASTER_KEY=xxxxxxxxxxxxxxxxxxxxxxx


あとはHerokuのコンソールの指示に従ってコマンドを実行

$ git push heroku master

までやったら

$ heroku run rake db:schema:load
$ heroku run rake db:migrate

 完了


本番環境のみ画像が表示されないとき
(error not found 404)

# config/environments/roduction.rb
config.assets.compile = true

に設定し

$ bundle exec rake assets:precompile RAILS_ENV=production

を実行