LoginSignup
2
2

More than 3 years have passed since last update.

【Mac】herokuにpushしようとすると、SQlite3のエラーが出た時の話

Last updated at Posted at 2019-03-03

問題

  • herokuにpushする時に SQlite3はherokuでは使えないから、本番環境ではPostgresqlを使うような設定に変更してね と言われた
  • git push heroku masterと打つと、下記のような感じのエラーが吐き出される
remote:  !     Failed to install gems via Bundler.
remote:  !     Detected sqlite3 gem which is not supported on Heroku:
remote:  !     https://devcenter.heroku.com/articles/sqlite3

対応

  • エラー文の中に下記のような、特定のディレクトリーやファイルにPermissionがないというエラーが出た時は、sudo chown -R <ディレクトリー名やファイル名>でオーナーを自分に変えたり、chown u+w <ディレクトリー名やファイル名>で書き込み権限を与えたりすると対応できる。
Permission denied @ dir_s_mkdir - /Users/{Username}/.rbenv/versions/2.5.0/lib/ruby/gems/2.5.0/extensions/x86_64-darwin-18/2.5.0-static/
  • 下のように、このgemをinstallしてみて!といったエラー文を確認して、gem installしようとした際にも、上記のようなパーミッションのエラーが吐き出されることがあるので、その時は上記の対応を取ると、解決に近く。
    • 自分の場合は大体がパーミッション関係の問題だった
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.
  • 上記で色々試しても、まだエラーが出るようであれば、bundle installする際に --without production のコマンドをつけてみる
    • これはSQlite3を本番環境で使うから、開発環境には関係ないよ。特にローカル環境での作業には本番(prod)の話は関係しないからinstallしません!程度に勝手に解釈している(正しい理解がある人に是非突っ込んでいただきたい....!)
bundle install --without production
2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2