Springboot整合Spring Cloud Kubernetes讀取ConfigMap,支援自動重新整理配置
阿新 • • 發佈:2020-09-04
# 1 前言
> 歡迎訪問[南瓜慢說 www.pkslow.com](https://www.pkslow.com/)獲取更多精彩文章!
`Docker & Kubernetes相關文章:`[容器技術](https://www.pkslow.com/categories/container)
之前介紹了`Spring Cloud Config`的用法,但對於`Kubernetes`應用,可能會需要讀取`ConfigMap`的配置,我們看看`Springboot`是如何方便地讀取`ConfigMap`和`Secret`。
# 2 整合Spring Cloud Kubenetes
[Spring Cloud Kubernetes](https://docs.spring.io/spring-cloud-kubernetes/docs/1.1.5.RELEASE/reference/html/)提供了`Spring Cloud`應用與`Kubernetes`服務關聯,我們也可以自己寫`Java`程式來獲取`Kubernetes`的特性,但`Spring`又為我們做了。
## 2.1 專案程式碼
引入依賴:
```xml
```
只需要`Springboot Web`和`Spring Cloud Kubernetes Config`即可,很簡單。
`Springboot`啟動類:
```java
@SpringBootApplication
public class ConfigMapMain {
public static void main(String[] args) {
SpringApplication.run(ConfigMapMain.class, args);
}
}
```
準備一個`EndPoint`來展示所讀到的配置資訊:
```java
@RestController
public class PkslowController {
@Value("${pkslow.age:0}")
private Integer age;
@Value("${pkslow.email:null}")
private String email;
@Value("${pkslow.webSite:null}")
private String webSite;
@Value("${pkslow.password:null}")
private String password;
@GetMapping("/pkslow")
pu