使用GoogleContainerTools容器化jib構建docker鏡像
前言碎語
今天分享一個在容器化過程中非常重要的一個工具,java應用docker鏡像build工具jib,這個工具是谷歌團隊研發(fā)開源的,特點是不依賴docker守護進程,直白點說就是本地環(huán)境不安裝docker環(huán)境也可以打包docker鏡像。不用依賴維護Dockerfile,而且基于java打包插件可以輕松嵌入到java本身的構建生命周期中(本文使用maven)??梢哉f是java容器化構建利器。
插件配置
<plugin> <groupId>com.google.cloud.tools</groupId> <artifactId>jib-maven-plugin</artifactId> <version>0.9.11</version> <configuration> <from> <image>xxx.cn-xxx.xxx.com/keking/jdk:1.8</image> <auth> <username>xx@xxx-group</username> <password>xxx#xx</password> </auth> </from> <to> <image>xxx.cn-xxx.xxx.com/keking/kk-businesscard:v1.1</image> <auth> <username>xxx@xxx-group</username> <password>xxx#xxx</password> </auth> </to> <container> <mainClass>cn.keking.kkbusinesscard.Application</mainClass> </container> </configuration> </plugin>
配置詳解
from
:定義基礎鏡像,這里配置的私有倉庫的jre鏡像
auth
:倉庫認證用戶和密碼配置
to
:目標鏡像
container
:容器內的相關配置,比如spring boot項目main方法,jvm參數等
插件命令使用
mvn compile jib:buildTar :這個命令將會構建鏡像到磁盤上/targer/jib-image.tar,可以使用docker load --input target / jib-image.tar加載到docker中
mvn compile jib:dockerBuild : 構建鏡像
mvn compile jib:build :構建鏡像并推送到鏡像倉庫
mvn compile jib:exportDockerContext:如下圖導出docker 構建所需的上下文到target/jib-docker-context目錄,可以使用docker build -t myimage my/docker/context/構建
集成插件生命周期
在插件中添加如下,綁定到package階段就可以使用mvn package來構建了
<executions> <execution> <phase>package</phase> <goals> <goal>build</goal> </goals> </execution> </executions>
文末結語
jib使用方便,支持maven ,gradle等build工具,是java容器化的利器。博主在實踐過程中也出了點小差錯,走了彎路,注意他的jib:build 和jib:dockerBuild的區(qū)別,前者會構建并推動到倉庫,后者不會推送到倉庫
以上就是使用GoogleContainerTools容器化jib構建docker鏡像的詳細內容,更多關于GoogleContainerTools容器化jib構建docker鏡像的資料請關注腳本之家其它相關文章!
相關文章
Docker部署Microsoft Sql Server詳細步驟
大家好,本篇文章主要講的是Docker部署Microsoft Sql Server詳細步驟,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽2021-12-12