如何提高Docker鏡像構建速度?

Docker是一個開源的應用容器引擎,將應用以及依賴打包到一個可移植的鏡像中,部署到服務器並運行在Container容器實例中。


在構建Docker鏡像時,需要運行mvn package打包Spring Boot項目,是不是下載依賴庫很慢導致整個構建過程很長?分享一個巧妙的解決方法。

image.png

1,Dockerfile配置是核心

Dockerfile是鏡像描述文件,包含了一條條的指令,每一條指令構建一層,因此每一條指令的內容,就是描述該層應當如何構建。Dockerfile基本結構:

- 基礎鏡像

- 維護者信息

- 鏡像構建指令

- 容器啓動時執行指令


構建Docker鏡像時,爲了解決mvn下載依賴庫速度慢、用時長的問題,將構建過程拆分爲兩步:

1) Dockerfile_base爲了觸發mvn下載依賴庫,構建一個空的Spring Boot項目,用時約10分鐘,在項目週期中很少改動,只需維護pom.xml

image.png

2) Dockerfile依賴Dockerfile_base,拉取源代碼和編譯打包jar文件,用時約3分鐘,每次代碼更新時構建Docker鏡像,速度非常快了。

image.png

2,增加Dockerfile_ce社區版

依賴本地開發環境,將編譯好的項目運行文件打包進Docker鏡像,多用於本地開發測試,快速構建。

image.png

實例Dockerfile下載:https://github.com/jextop/StarterDeploy

專欄:https://blog.51cto.com/cloumn/detail/90


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章