我已经浏览了一下,但我不清楚如何为Play框架应用程序配置一组特定于环境的变量.
作为一个例子,我想使用像h2这样的内存数据库进行本地开发,但是当我转移到生产或我的预生产环境时,我想连接到postgres数据库.
如何配置我的应用程序,以便它将使用与其部署的环境相关的变量?这是一款Scala Play应用.
一个选项(如优秀的播放文档中所述)是在app启动期间指定conf文件.
使用-Dconfig.resource
将在应用程序类路径中搜索备用配置文件(通常在打包之前将这些备用配置文件提供到应用程序conf /目录中).播放将调查conf /所以您不必添加conf /.
$ /path/to/bin/<project-name> -Dconfig.resource=prod.conf
使用-Dconfig.file
您可以指定未打包到应用程序工件中的特定于环境的配置文件:
$ start -Dconfig.file=/opt/conf/prod.conf
使用-Dconfig.url
您还可以指定要从任何URL加载的配置文件:
$ start -Dconfig.url=http://conf.mycompany.com/conf/prod.conf
请注意,您始终可以使用include指令在新的prod.conf文件中引用原始配置文件,例如:
include "application.conf" key.to.override=blah