使用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:容器內(nèi)的相關配置,比如spring boot項目main方法,jvm參數(shù)等
插件命令使用
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鏡像的詳細內(nèi)容,更多關于GoogleContainerTools容器化jib構建docker鏡像的資料請關注腳本之家其它相關文章!
相關文章
Docker部署Microsoft Sql Server詳細步驟
大家好,本篇文章主要講的是Docker部署Microsoft Sql Server詳細步驟,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽2021-12-12
Windows Docker部署Jenkins的實現(xiàn)步驟
Jenkins是一款開源的持續(xù)集成工具,廣泛用于項目開發(fā),能提供自動構建測試部署等功能,本文主要介紹了Windows Docker部署Jenkins的實現(xiàn)步驟,感興趣的可以了解一下2024-03-03

