I deploy Rails 5 with PostgreSQL to free app in Heroku. This is my configuration from database.yml
:
production:
adapter: postgresql
username
It seems like database is not provided for your app, you need to add one:
heroku addons:create heroku-postgresql
You can verify the database was added to your application by running:
heroku config --app your_app_name
After delete old DB, you should execute this
heroku pg:promote HEROKU_POSTGRESQL_NEW_DATABASE
You can check your DB nickname by
heroku pg:info
Follow some steps in serial order,
$ heroku login
In Gemfile, add the pg gem to your Rails project. Change:
gem sqlite
to
gem 'sqlite3', group: :development
gem 'pg', '0.18.1', group: :production
In Gemfile, add the rails_12factor gem::
gem 'rails_12factor', group: :production
$ bundle install
Ensure config/database.yml is using the postgresql adapter. Change:
production:
<<: *default
database: db/production.sqlite3
to
production:
<<: *default
adapter: postgresql
database: db/production.sqlite3
$ git add .
$ git commit -m "Heroku config"
$ heroku create
$ git push heroku master
$ heroku run rake db:migrate
SO FOLLOW STEP 5 correctly.