Ruby
Rails
Heroku
SQLite3

HerokuではSQLite3が使えない?!


■ 結論

SQLiteは使えません。

なので、 PostgreSQL を使用するよう設定します。


■ 経緯

Herokuにデプロイ時、エラーが出た。


terminal

remote:        An error occurred while installing sqlite3 (1.3.13), and Bundler cannot

remote: continue.
remote: Make sure that `gem install sqlite3 -v '1.3.13'` succeeds before bundling.
remote: !
remote: ! Failed to install gems via Bundler.
remote: ! Detected sqlite3 gem which is not supported on Heroku:
remote: ! https://devcenter.heroku.com/articles/sqlite3
remote: !
remote: ! Push rejected, failed to compile Ruby app.
remote:
remote: ! Push failed
remote: Verifying deploy...
remote:
remote: ! Push rejected to hoge-hoge-00000.
remote:
To https://git.heroku.com/hoge-hoge-00000.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/hoge-hoge-00000.git'

SQLite3 周りでエラーが出る。。。


■ 原因・解決

heroku だと、 sqlite3 がビルドできないので、開発環境でだけ使うよ、っていう宣言が必要

 (heroku では、 production の gem だけビルドされる)

↓を削除し


gemfile

gem 'sqlite3'


代わりに↓を挿入する


gemfile

gem 'sqlite3', groups: %w(test development), require: false

gem 'pg', groups: %w(production), require: false


上記のようにGemfileを修正後、 bundle install && git push heroku master で完了!


■ 参考

http://d.hatena.ne.jp/EnnuimaZ/20120407/1333806290