0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

駆け出しがRailsアプリをHerokuにデプロイするときに躓いたこと

Last updated at Posted at 2021-07-06

バックエンドエンジニアを目指し、Ruby on RailsでGoogleの口コミから信憑性の高い投稿のみを抽出して評価を判定するサービスをポートフォリオとして作成しました。
ローカル環境で正常に動くものができ、いざHerokuにデプロイしてURLにアクセスしてみるとApplication errorとなってしまいその原因が分からず数日間悩みました。
今回はデプロイ後にApplication errorとなってしまった原因2つを紹介します。

前提

  • Rails 6.1.3.2
  • ruby 2.7.2p137 (2020-10-01 revision 5445e04352) [x86_64-darwin20]
  • selenium-webdriver
  • ChromeDriver
  • Herokuへのデプロイを考慮して、データベースはRailsでデフォルトのSQLiteからpostgresqlへ変更済み

必要なbuildpack が追加されていなかった

  • heroku/ruby heroku/nodejs、Google Chromeを操作するために必要なドライバ heroku/chromedriverの3つが揃っていなかった
  • 原因
    • デフォルトでheroku/ruby heroku/nodejsが存在していたにも関わらず、heroku buildpacks:set heroku/chromedriverを実行してしまった
    • heroku buildpacks:setは既存のbuildpacksをすべて吹き飛ばして引数で指定したbuildpackが追加されるため、heroku/ruby heroku/nodejsが消えてheroku/chromedriverのみが存在する形になった
    • heroku/chromedriverを設定したい場合はheroku buildpacks:add heroku/chromedriverとすることで既存のbuildpackを上書きすることなく追加できた

Heroku上のアプリにおけるadd-onsにPostgresが設定されていなかった

やったこと

  • Configure Add-onsからHeroku Postgresを追加
  • ターミナルからではなくブラウザからHerokuのアプリを作成したためpostgresqlを使用していることがHerokuにうまく伝わっていなかったことが原因と考えられる
    image.png
    image.png
    image.png
0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?