美文网首页
谷歌开源 Java 镜像构建工具 Jib

谷歌开源 Java 镜像构建工具 Jib

作者: 华阳_3bcf | 来源:发表于2023-04-11 09:44 被阅读0次

    传统对 Java 应用程序进行容器化并非易事:你必须编写 Dockerfile,以 root 身份运行 Docker 守护进程,等待构建完成,最后将镜像推送到远程注册中心。

    [注意]这只是针对纯粹的Java程序,如果你还要安装一些其它的依赖包,修改脚本等,就不合适了。

    Docker 构建流程:


    image.png

    Jib 构建流程:


    image.png

    将java项目容器化push到registries

    jib的引入非常简单,以maven plugin的方式集成到项目中,只需要在你的项目中引入下面代码即可

    <plugin>
        <groupId>com.google.cloud.tools</groupId>
        <artifactId>jib-maven-plugin</artifactId>
        <version>0.9.6</version>
        <configuration>
            <from>
                <!--base image-->
                <image>openjdk:alpine</image>
            </from>
            <to>
                <!--<image>registry.cn-hangzhou.aliyuncs.com/m65536/jibtest</image>-->
                <!--目标镜像registry地址,为了方便测试,你需要换成自己的地址,如果你的网络不好,可以选用国内加速器,比如阿里云的-->
                <image>registry.hub.docker.com/moxingwang/jibtest</image>
            </to>
        </configuration>
        <executions>
            <execution>
                <phase>package</phase>
                <goals>
                    <goal>build</goal>
                </goals>
            </execution>
        </executions>
    </plugin>
    

    这只是一个最简单的配置,比如registry认证配置,jvm配置等等,可以参考github jib详细说明jib/jib-maven-plugin/

    构建你的镜像

    mvn compile jib:build
    

    把镜像直接构建到本地docker中

    使用这种构建方式,首先你要确保本已经安装docker并且环境变量都配置正确,因为这种方式jib依赖docker 命令执行,你还需要保证已经启动服务(在terminal中执行 docker --version 能够正确返回)。

    mvn compile jib:dockerBuild
    

    接下来直接操作,首先查看本地已有images

    docker iamges
    

    其它plugin

    还有其它 plugin 完成类似功能,比如:

    docker-maven-plugin

    <plugin>
        <groupId>org.jolokia</groupId>
        <artifactId>docker-maven-plugin</artifactId>
        <version>0.11.5</version>
    ...
    </plugin>
    

    kubernetes-maven-plugin

    <plugin>
        <groupId>org.eclipse.jkube</groupId>
        <artifactId>kubernetes-maven-plugin</artifactId> (4)
        <version>1.12.0</version>
    </plugin>
    

    参考

    https://juejin.cn/post/6844903639882940423

    相关文章

      网友评论

          本文标题:谷歌开源 Java 镜像构建工具 Jib

          本文链接:https://www.haomeiwen.com/subject/evqwddtx.html