作者:じ☆ve宝贝
发布时间:2019-02-15T11:06:11
在开源中国上看到《Jib 1.0.0 GA 发布:构建 Java Docker 镜像从未如此简单》,目的是为了更方便将 Java 应用程序容器化,Google 于去年推出了 Jib 工具。Jib 是一个快速而简单的容器镜像构建工具,它负责处理将应用程序打包到容器镜像中所需的所有步骤。
码云: https://gitee.com/mirrors/Jib github:https://github.com/GoogleContainerTools/jib
以 Maven 和 Gradle 插件形式提供(本文仅提供maven的使用方式) 在pom.xml中增加
<build>
<plugins>
....
<plugin>
<groupId>com.google.cloud.tools</groupId>
<artifactId>jib-maven-plugin</artifactId>
<version>1.0.0</version>
<configuration>
<from>
<image>registry.cn-beijing.aliyuncs.com/studyjava/test:1.0.0</image>
<auth>
<username>阿里云登录用户名</username>
<password>阿里云容器管理页面设置的Registry登录密码</password>
</auth>
</from>
<to>
<image>registry.cn-beijing.aliyuncs.com/studyjava/study:1.0.0</image>
<auth>
<username>阿里云登录用户名</username>
<password>阿里云容器管理页面设置的Registry登录密码</password>
</auth>
</to>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>build</goal>
</goals>
</execution>
</executions>
</plugin>
...
</plugins>
</build>
from:拉取镜像的配置,默认为gcr.io/distroless/java 改地址被墙,下面会讲解如何通过阿里云代理拉去该镜像
to:要生成的镜像的配置
image:拉取或生成的镜像名称
auth: 认证信息,分别为用户名和密码
<!-- 下面四个基本用不到,上面四个足以 -->
container: 容器的属性
jvmFlgs: JVM 容器的参数,和 Dockerfile 的 ENTRYPOINT作用相同
mainClass: 启动类限定名
args: main 方法的传入参数
ports: 容器暴露的端口,和 Dockerfile 的EXPOSE作用相同
运行maven的
package jib:build