【问题标题】:Deploying spring boot to elasticbeanstalk and setting system properties将spring boot部署到elasticbeanstalk并设置系统属性
【发布时间】:2014-11-22 14:42:15
【问题描述】:

我正在尝试将 Spring Boot 应用程序(使用 jhipster yeoman 模板生成)部署到 aws。我取得了一些成功,但发现自己有一个问题:

如何配置生产配置文件以使用 AWS 指定的系统属性来获取正确分配的数据库连接信息。

AWS 文档只是说将 databaseName、serverName、userName、password 设置为以下内容:

System.getProperty("RDS_DB_NAME"); 
System.getProperty("RDS_USERNAME"); 
System.getProperty("RDS_PASSWORD"); 
System.getProperty("RDS_HOSTNAME");
System.getProperty("RDS_PORT");

我正在使用 yaml 文件为 Dev 和 prod 模式指定这些参数,我发现自己在问。如何将上述调用注入到我的 yaml 文件中?在 jruby on rails 我会做类似的事情:

username: <%= System.getProperty("RDS_USERNAME") %>

在我的 yaml 文件中。但是看到这是Java,我认为这行不通。还是我应该以不同的方式思考这个问题?看起来很容易做到这一点的地方应该在 yaml 文件中,而且我的很多谷歌搜索似乎并没有出现太多。

任何帮助将不胜感激。

【问题讨论】:

    标签: spring-boot jhipster


    【解决方案1】:

    谢谢朱利安,

    任何其他的答案都很简单。

    如果您使用 yaml 文件进行生产设置并通过 RelaxedPropertyResolver 输出属性,您只需在 yaml 中执行以下操作:

    databaseName: ${RDS_DB_NAME}
    serverName: ${RDS_HOSTNAME}
    username: ${RDS_USERNAME}
    password: ${RDS_PASSWORD}
    

    我将打开一个问题,因为我也遇到了一些其他问题,但也想在这里回答。

    【讨论】:

      【解决方案2】:

      看看我们如何设置在 Heroku 上部署的属性,它的工作原理可能相同:

      https://github.com/jhipster/generator-jhipster/blob/master/heroku/templates/Procfile

      顺便说一句,我也很想拥有一个 Beanstalk 子生成器,所以如果你成功了,你能分享一下吗?你可以在https://github.com/jhipster/generator-jhipster/issues添加一张票,解释你做了什么

      【讨论】:

        猜你喜欢
        • 2017-09-07
        • 2017-02-10
        • 1970-01-01
        • 2015-03-18
        • 1970-01-01
        • 2020-08-28
        • 2011-03-21
        • 2014-09-04
        • 2022-08-10
        相关资源
        最近更新 更多