我正在GCP云上运行Mirconaut应用程序,cloud数据库运行在私有ip上。
数据库密码存储在GCP云机密中,在创建到DB的连接之前,我需要加载这个秘密。
我遵循了这里的指南:https://micronaut-projects.github.io/micronaut-gcp/3.4.0/guide/index.html#secretManager
但这个秘密从来没有预告过我。
这里是我的bootstrap.yml的样子:
micronaut:
application:
name: test
config-client:
enabled: true
gcp:
secret-manager:
keys:
- db-user-password,这里是我的application.yml db配置:
micronaut:
application:
name: test
config-client:
enabled: true
datasources:
default:
url: jdbc:postgresql:///test?cloudSqlInstance=testcloudSqlInstance&socketFactory=com.google.cloud.sql.postgres.SocketFactory
name: test
username: user
password: ${sm.db-user-password}
dialect: POSTGRES
maximumPoolSize: 15
minimumIdle: 5
jpa:
default:
packages-to-scan:
- "com.test"
entity-scan:
packages: 'com.test'
properties:
hibernate:
hbm2ddl:
auto: none
show_sql: false
liquibase:
datasources:
default:
enabled: true
dropFirst: false
defaultSchema: public
change-log: 'liquibase-changelog.xml'Micronaut版本: 2.3.2 Micronaut gcp版本: 3.4.0
发布于 2021-05-15 16:51:22
<logger name="io.micronaut.context.env.PropertySourcePropertyResolver" level="TRACE"/>
的“秘密管理器秘密访问器”
${sm.db-user-password}的占位符应该是${sm.db.user.password},而不是${sm.db.user.password}
https://stackoverflow.com/questions/66778774
复制相似问题