繁体   English   中英

Spring 云库配置文件特定引导程序

[英]Spring Cloud Vault Profile Specific Bootstrap

我有一个 Spring 引导应用程序,我想根据我正在运行的配置文件从 Vault 加载配置。 目前我有 2 个配置文件(开发、产品)。 我的 Dev Profile 使用 H2 数据库,而 Prod Profile 使用 Posgres DB。 运行开发配置文件会从 Vault 加载正确的配置,但使用 Prod 配置文件运行似乎会以某种方式跳过它,而不是查看 Vault。

引导程序.yaml

spring:
  application:
    name: my-app
  profiles:
    active:
  cloud:
    vault:
      host: localhost
      port: 8200
      scheme: http
      uri: http://localhost:8200
      connection-timeout: 5000
      read-timeout: 15000
      authentication: TOKEN
      token: 00000000-0000-0000-0000-000000000000
      kv:
        enabled: true
        backend: secret
        default-context: my-app/dev
      fail-fast: false

引导-prod.yaml

spring:
  application:
    name: gateway
  profiles:
    active: prod
  cloud:
    vault:
      host: localhost
      port: 8200
      scheme: http
      uri: http://localhost:8200
      connection-timeout: 5000
      read-timeout: 15000
      authentication: TOKEN
      token: 00000000-0000-0000-0000-000000000000
      kv:
        enabled: true
        backend: secret
        default-context: my-app/dev
      fail-fast: false

例如,运行命令gradle将从保管库加载配置。 但是运行gradle -Pprod无法从 Vault 加载正确的配置。

在使用 gradle 时尝试使用以下语法来激活您的配置文件:

./gradlew clean bootRun --args='--spring.profiles.active=prod'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM