使用maven进行集成docker打包成镜像以及推送到docker私服
先水几句
我不会开场啊…默默无闻的送码人.不是吧不是吧.现在还有人用maven打包,然后手动上传jar.然后进行部署吗?你out了.还是用Jenkins集成gitlab进行CI/CD.但是今天要说的是,使用maven进行集成docker插件进行打包镜像.(强行拉回正题,水文真的是除了敲代码之外极佳的爱好了 /捂脸)
docker的好处自然不比赘述.直接准备进入正题.
公司项目就准备使用docker+k8s进行项目部署.周一给我分了一个任务.就是将项目进行发布到docker,并且推送到自建的私服.搭建私服的步骤就不再说了.网上有很多优秀的博客.跟着博客走,搭建起来问题不大.
好,假装已经开好头了.接下来进入正题
docker插件
目前比较流行的maven-docker插件的话.有几种.spotify和fabric8io.我查阅了一些博客后,发现spotify是使用比较多的.所以今天,我们也是使用这款插件来进行打包.
实际使用
1.安装docker,并开启远程访问
怎么安装docker也不多说了.应该是比较简单了.正常安装后,正常启动.然后修改一下配置文件.开启docker的远程访问.
vi /lib/systemd/system/docker.service
然后会出现一段配置,如下图所示:
修改上面的框出来的地方.修改成我这样.
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock
(我就知道程序员懒,直接复制给你们 )
然后 :wq 保存退出.
然后就刷新配置
systemctl daemon-reload
重启docker
service docker restart
然后呢,就自己curl测试一下,看是否成功了.
curl http://your's ip:2375/version
出现下面这段描述,就表示成功了.不然的话,就回头重新看看是不是哪里配置错了.比较简单.就不多说了.
maven添加docker插件
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>1.0.0</version>
<configuration>
<imageName>${
project.artifactId}:latest</imageName>
<baseImage>java</baseImage> <!--基于java构建-->
<entryPoint>["java","-jar","/${project.build.finalName}.jar"]</entryPoint>
<dockerHost>http://your's ip:2375</dockerHost>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${
project.build.directory}</directory>
<include>${
project.build.finalName}