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
を実行