0

ENV 変数に基づいて PostgreSQL サーバーに接続する必要があります。ENV 変数は Docker によって設定されます。sbt-native-packager を使用して、私の akka/play プロジェクトの docker コンテナーを作成しています。

だから私は自分のconfに変数を追加しようとしました:

db{
  default {
    host=${POSTGRES_PORT_5432_TCP_ADDR}
    driver=org.postgresql.Driver
    url=jdbc:postgresql://${host}:5432/mail_archive
    user=username
    password=password
  }
}

残念ながら、構成ファイルはもう解析できません。

45: 右中括弧が必要です } またはカンマが必要です。':' を取得しました (':' を 'url' の値の一部にする場合は、値を二重引用符で囲みます。そうしないと、ファイルの名前を変更できる場合があります。 .conf ではなくプロパティ)

(45 は url= 行です)

URL 文字列の前後に " を使用すると、${host} 変数が置き換えられなくなり、play アプリケーションは HostNotFoundException をスローします。

タイプセーフ構成内で使用される JDBC url に ENV 変数を含める方法を提案する人はいますか?

4

1 に答える 1

2

次のことを試してください。

url="jdbc:postgresql://"${host}":5432/mail_archive"
于 2014-10-16T08:00:39.460 に答える