0%

在SpringBoot应用application.yaml中使用Linux Environment

其实只是想记录一下如何在application.yaml中使用Linux Environement。

因为已经使用了Helm进行应用装配,那么动态的配置只能通过Linux Environment注入到SpringBoot中,让其能够读取Environment是非常关键的。

其实读取Linux Environment很简单,直接变理引用即可:

1
jdbc.url: ${DB_NAME}:8080/demo?

这里DB_NAME是env定义的环境变量,在yaml文件中直接引入即可,真的非常方便。

这里来个更完整的:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
spring:
application:
name: demo
jackson:
time-zone: Asia/Shanghai
date-format: yyyy-MM-dd HH:mm:ss
property-naming-strategy: SNAKE_CASE
jpa:
database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
show-sql: true
hibernate:
ddl-auto: update
properties:
hibernate:
format_sql: true
show_sql: true
data:
jpa:
repositories:
enabled: true
datasource:
url: jdbc:mysql://${DB_SERVER}:3306/${DB_NAME}?characterEncoding=utf8&autoReconnect=true&useUnicode=true&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=GMT%2b8
username: ${DB_USERNAME}
password: ${DB_PASSWORD}
type: com.zaxxer.hikari.HikariDataSource
hikari:
auto-commit: false
transaction:
rollback-on-commit-failure: true