Sbt typesafe配置无法分析带有变量的url

Sbt typesafe配置无法分析带有变量的url,sbt,sbt-native-packager,typesafe-stack,typesafe-config,Sbt,Sbt Native Packager,Typesafe Stack,Typesafe Config,我需要基于ENV变量连接到PostgreSQL服务器。环境变量由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_archi

我需要基于ENV变量连接到PostgreSQL服务器。环境变量由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”值的一部分,请尝试将该值包含在double中 引号,或者您可以重命名文件。属性而不是 .conf)

(其中45是url=行)

在url字符串周围使用“HostNotFoundException”时,${host}变量不再被替换,播放应用程序将抛出HostNotFoundException

有人建议如何在typesafe配置中使用的JDBC url中包含ENV变量吗?

尝试以下方法:

url="jdbc:postgresql://"${host}":5432/mail_archive"

如果我的配置想要同时提供主机和端口呢?例如
url=“jdbc:postgresql://“${host\u port}”/mail\u archive”
。它会再次抱怨同样的事情。请看,谢谢!