今天給大家帶來的主角是:spring-boot-docker-compose
第一次使用這個框架時,確實震驚到我了,我無法描述這個框架的作用,大家直接看吧~~
這是我新建的Springboot專案,裡面沒有任何邏輯程式碼,就一個Springboot啟動類。
這是pom檔案中的依賴引入:
可以看到,我引入了4箇中間件,分別是rabbitMQ
,mongodb
,redis
和mysql
。
衆所周知,這些中介軟體都必須在配置檔案填寫相應的賬號密碼、連線地址等,否則專案將無法啟動。
但是~~
我沒有填任何配置資訊!
它居然正常啟動了,並且在日誌中輸出了mongodb的連線資訊!
這是什麼魔法?
這是什麼魔法?
這是什麼魔法?
其實大家應該注意到了,我還有一個檔案沒有給大家看——compose.yaml
,我們來看一下:
用過docker-compose的人應該知道,這就是一個普通的compose檔案,docker compose的概念在這裏不展開描述,如果不清楚的同學可以簡單理解為compose.yaml定義了一組容器,透過docker compose命令可以啟動compose.yaml中定義的所有容器,並保持在同一個網路環境中執行。
當我們啟動專案後,輸出日誌也能看到:
該框架會讀取compose.yaml檔案,並且會建立對應的容器(如果本地沒有該映象,系統會自動下載,下載完成後自動建立)。
而我們的配置檔案也完全不需要了,該框架會透過讀取compose.yaml中定義的配置資訊自動讀取到每個中介軟體框架驅動資訊中,真正做到了一鍵啟動。