dockerfile-maven-plugin是一款用于maven打包docker镜像的插件,其功能类似于docker client,负责将dockerfile中命令发送到docker守护进程,所以即使在 executions> </plugin> <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin </executions> </plugin> </plugins> </build> 这里面需要关注的是build-helper-maven-plugin以及dockerfile-maven-plugin build-helper-maven-plugin来创建北京时间,即GMT+8 PS: 需要注意build-helper-maven-plugin插件中的configuration配置的name标签值要与dockerfile-maven-plugin
在使用dockerfile-maven-plugin打包镜像可谓是一波三折,和docker-maven-plugin完全不一样,笔者使用的环境又是win7系统,在win7系统上安装的docker toolbox <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin </resources> </configuration> </plugin> 上面的是dockerfile-maven-plugin
Maven插件构建镜像 Spotify公司的dockerfile-maven-plugin和Google公司出品的jib-maven-plugin是两款比较有名的插件,下面简单介绍一下dockerfile-maven-plugin SNAPSHOT</version> <name>helloworld</name> <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin registry.cn-beijing.aliyuncs.com</docker.registry.url> </properties> 在POM文件里配置好插件后伴随着我们打包应用执行mvc clean package操作时dockerfile-maven-plugin dockerfile-maven-plugin除了能帮助我们打包应用镜像外还可以让它帮助我们把镜像push到远端仓库,不过我觉得用处不大,感兴趣的同学可以去网上搜搜看这部分功能怎么配置。
/urandom","-jar","/app.jar"] 2.在项目pom.xml中添加docker镜像构建插件dockerfile-maven-plugin <build> <plugins> 插件直接将应用打包为一个Docker镜像 --> <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin </buildArgs> </configuration> </plugin> </plugins> </build> 显然,在插件dockerfile-maven-plugin -- 使用Maven插件直接将应用打包为一个Docker镜像 --> <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin
Maven插件构建镜像 Spotify公司的dockerfile-maven-plugin和Google公司出品的jib-maven-plugin是两款比较有名的插件,下面简单介绍一下dockerfile-maven-plugin SNAPSHOT</version> <name>helloworld</name> <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin registry.cn-beijing.aliyuncs.com</docker.registry.url> </properties> 在POM文件里配置好插件后伴随着我们打包应用执行mvc clean package操作时dockerfile-maven-plugin dockerfile-maven-plugin除了能帮助我们打包应用镜像外还可以让它帮助我们把镜像push到远端仓库,不过我觉得用处不大,感兴趣的同学可以去网上搜搜看这部分功能怎么配置。
Spotify官方已经不再推荐使用docker-maven-plugin,不在进行维护,转而推荐了另外一款由该公司开发的Maven插件dockerfile-maven-plugin。 构建Docker镜像 配置pom.xml 首先,在pom.xml中引入dockerfile-maven-plugin插件,并配置该插件。 --docker私服地址--> <docker.repostory>docker.io</docker.repostory> </properties> 增加dockerfile-maven-plugin 的配置,以eureka为例: <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin</artifactId
利用 maven 插件生成镜像文件 我们这里用到的 Maven 插件是 dockerfile-maven-plugin。 spring-boot-maven-plugin</artifactId> </plugin> <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin
sonar-project.properties文件 修改Jenkins构建脚本 编译打包微服务工程 使用Docker编译、生成镜像并自动推送到harbor 前提说明 在每个微服务的pom.xml中加入dockerfile-maven-plugin ---- 使用Docker编译、生成镜像并自动推送到harbor 前提说明 ● 利用dockerfile-maven-plugin插件来构建Docker镜像。 <artifactId>activation</artifactId> <version>1.1.1</version> </dependency> 在每个微服务的pom.xml中加入dockerfile-maven-plugin <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin plugins> <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin
#3 dockerfile-maven-plugin 这个插件就需要我们写 Dockerfile 了,Domo 项目中已经准备好了。 看起来最麻烦的就是 dockerfile-maven-plugin 这个插件了,需要写 Dockerfile,还得添加配置,但是,实际上他是最好用的,因为前2个与网络环境有关系(你懂的),即使你配置了
plugins> <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin FROM openjdk:8-jdk-alpine ARG JAR_FILE COPY ${JAR_FILE} app.jar ENTRYPOINT ["java","-jar","/app.jar"] dockerfile-maven-plugin
plugin> <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin
--添加Docker镜像Maven打包插件--> <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin project.build.finalName}.jar</JAR_FILE> </buildArgs> </configuration> </plugin> 在项目工程pom.xml文件中添加“dockerfile-maven-plugin
<inherited>false</inherited> </plugin> 集成dockerfile插件 现在网上流传的docker插件有两个版本,分别是 docker-maven-plugin和 dockerfile-maven-plugin -- dockerfile插件 --> <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin
然后你就可以通过引入: <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin
--> <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin project.artifactId} <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin
Web程序的接口 能够传递JVM参数、Java System Properties、程序自定义的参数 下面具体讲一下具体怎么做到以上几点: 制作过程要融合在项目构建过程中 这里推荐使用Spotify的dockerfile-maven-plugin
镜像标签和其他东西有一些配置选项,但它使您的应用程序中的 docker 知识集中在一个Dockerfile很多人喜欢的 .对于真正的基本用法,它无需额外配置即可开箱即用:mvn com.spotify:dockerfile-maven-plugin 以下示例在不更改pom.xml文件的情况下工作:$ mvn com.spotify:dockerfile-maven-plugin:build -Ddockerfile.repository=myorg build> <plugins> <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin
target目录找到编译好的jar包,在实际项目中我们可以通过指令将这个jar推到远程服务器上去,或者可以做成docker镜像,推到docker仓库,在远程执行docker指令把这个镜像跑起来,maven插件dockerfile-maven-plugin
使用Dockerfile生成镜像 在每个微服务项目pom.xml加入dockerfile-maven-plugin插件 <build> <plugins> plugin> <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin
> <plugins> <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin