概要
ScalaのPlay frameworkアプリケーションをherokuにDeplayした時にはまったので、メモ
問題点
通常通り、アプリケーションを作成しherokuにdeployしたが、code=H10 アプリケーションがCrashしたなどと言われる。
問題点:詳細
logをよく見てみると以下のように書いてあるので、Application Secretを設定していないことが問題らしい。Play frameworkの公式サイトにも同様の解説を発見。(https://www.playframework.com/documentation/ja/2.3.x/ApplicationSecret)
[error] p.a.l.c.CryptoConfigParser - The application secret has not been set, and we are in prod mode.
解決アクション
- 以下でSecret keyを設定
heroku config:set APPLICATION_SECRET="(シークレットキー)" -a (アプリID)
- 以下のようなProcfileをアプリケーションのrootに作成
web: target/universal/stage/bin/(小文字でアプリの名前)
-Dhttp.port=${PORT}
-Dplay.crypto.secret=${APPLICATION_SECRET}
別の問題が発生
今度はdbに接続できない旨のエラー発生
Configuration error: Configuration error[Cannot connect to database [default]]
(編集中)