Maven一键部署Springboot到Docker仓库,为自动化做准备
2021-04-25 07:28
标签:pack cut 打包 getpath 公众号 加密 吐槽 文章 tags 前面《Springboot整合MongoDB的Docker开发,其它应用也类似》讲解了如何做 可以使用 该插件可以实现镜像打包和 添加后,通过以下命令执行: 通过命令 通过下面命令可以push到 可以通过添加 有了这些绑定配置后,要打包镜像,直接 首先,插件可以使用配置在本地 如配置在 密码是可以加密的,详情请查看: Maven‘s built in encryption function 。 在项目的 因为 配置好后,执行以下 账号可以配置在 当然,也可以配置在 通过 参考资料: docker-maven-plugin:https://github.com/spotify/docker-maven-plugin dockerfile-maven:https://github.com/spotify/dockerfile-maven 欢迎访问南瓜慢说 www.pkslow.com获取更多精彩文章! 欢迎关注微信公众号南瓜慢说>,将持续为你更新... 多读书,多分享;多写作,多整理。 欢迎大家关注、分享。 Maven一键部署Springboot到Docker仓库,为自动化做准备 标签:pack cut 打包 getpath 公众号 加密 吐槽 文章 tags 原文地址:https://www.cnblogs.com/larrydpk/p/13258599.html1 前言
Docker
开发、如何把Springboot
应用打包成一个镜像,但它是手动的,本文将讲解如何通过maven
一键打包部署。2 两个maven插件搞定
maven
插件实现一键部署,这两个插件还是同一个公司的产品,就是著名的音乐流服务平台Spotify
。2.1 spotify/docker-maven-plugin
2.1.1 基础用法
push
到仓库,无Dockerfile
和有Dockerfile
两种方式都可以,建议使用Dockerfile
,更灵活。在maven
的pom.xml
文件加入以下插件配置:
imageName
:这是镜像名称;imageTags
:标签,支持多标签,即同一个镜像文件多个标签;我指定了一个参数imageVersion
,可以命令行传入,方便后续整合Jenkins
。forceTags
:是否覆盖原有标签;dockerDirectory
:Dockerfile文件所在的位置;而且该目录下的所有文件都会被复制到${project.build.directory}/docker
。因为我的Dockerfile
放在项目根目录,所以整个项目的文件都复制过去了,包括源代码等。不得不吐槽一下这个设计,这是在强迫大家换个位置放Dockerfile
吗?resources
:用来添加dockerDirectory
外的其它资源文件。$ mvn clean package docker:build -DimageVersion=0.0.4
docker images
查看成功,运行也正常。registry
:mvn clean package docker:build -DpushImage
mvn clean package docker:build -DpushImageTag
2.1.2 与maven生命周期绑定
executions
配置实现与maven
生命周期的绑定。mvn clean package
即可。2.1.3 仓库登陆信息配置
~/.dockercfg
或 ~/.docker/config.json
的验证信息,或者可以显式地配置在maven
上。settings.xml
文件:pom.xml
中使用:2.2 spotify/dockerfile-maven
2.2.1 更简洁的插件
docker-maven-plugin
有一些Bugs,所以Spotify
开发了更方便简洁的插件dockerfile-maven
。dockerfile-maven-plugin
的配置更简单:maven
命令即可打包成镜像并推送到仓库:mvn deploy
2.2.2 仓库验证
pom.xml
中,如下:maven
的配置文件settings.xml
中,这样更安全,请参考:https://github.com/spotify/dockerfile-maven/blob/master/docs/authentication.md3 总结
maven
插件,可以快速方便地一键打包、部署,非常方便,对后续的整个DevOps
整合也是很有益的。
文章标题:Maven一键部署Springboot到Docker仓库,为自动化做准备
文章链接:http://soscw.com/index.php/essay/79313.html