如何在cloudfoundry中为播放应用程序传递其他启动参数

时间:2013-01-28 17:49:42

标签: playframework-2.0 cloudfoundry playframework-2.1

在cloudfoundry上部署Play!2应用程序时,我希望能够为启动命令指定至少一个附加参数。

目前看起来cloudfoundry使用Play2创建的启动脚本而没有任何参数,但是要覆盖具有特定生产值的默认应用程序配置,我需要使用-Dconfig.resource = prod.conf

来调用它。

我找不到任何办法,可能通过manifest.yml,但我无法找到如何添加此参数的规范。

从这个公寓我能够成功部署Play 2.0并将2.1应用程序发布到cloudfoundry

2 个答案:

答案 0 :(得分:5)

阅读cloudfoundry工具的源代码我发现play的vcap-staging插件不支持manifest.ml中的“command”属性,也不会要求它。它会自动假定应用程序将以“start”启动(请参阅line 10 in plugin.rb)。

但是,does honor是JAVA_OPTS环境变量。

最后,我能够做到

vmc set-env JAVA_OPTS "-Dconfig.resource=prod.conf"

让它按照我的意愿运作。

答案 1 :(得分:1)

实现此目的的一种方法是将内置zip解压缩并作为独立应用程序上传。您可能已经尝试过,在出现提示时,将启动脚本后面的参数作为启动命令行。虽然这会带来一个问题,即您无法利用CF为服务绑定提供“自动重新配置”功能,并且您必须具有单独的配置才能在云上部署。