文章總結;
Springboot配置文件中的一些參數可以寫成變量的形式,具體變量的值可以從docker-compose.yml文件中設置來獲取
在yml文件中,通過${Envirment_variable}的方式可以獲取系統環境變量中的值;於是可以通過把環境變量配置在docker-compose文件中,這樣在docker鏡像啟動的時候,通過docker-compose中指定的變量,來定義應用中的配置;
例如,我的應用中集成cas單點登錄,但是這個單點登錄的服務器地址不確定,於是在配置文件中可以這么寫
這里cas.server.url中的值從系統的環境變量CAS_SERVER中獲取,如果系統中環境變量沒有獲取到,那么使用地址https://sophon15:8393的地址;在docker-compose中的配置
這樣就可以了;
順帶說一下docker-compose 中如何配置系統的host;這里的sophon15就是host地址,在docker-compose的extra_hosts屬性中配置就可以了,如圖所示
總結:yml總可以通過${Envirment_variable}的方式讀取系統環境變量中的值;然后通過在docker-compose文件中配置好對應的環境變量值,這樣應用在讀取的時候就直接讀到配置的值;而不用系統在打包的時候就得確定某些配置的值;