打包流程
jenkins创建maven项目
jenkins拉取代码
jenkins打包jar包
jenkins将jar包上传到镜像构建服务器
jenkins执行shell执行dockerfile
jenkins执行shell上传镜像到仓库
jenkins执行shell启动容器
长图预警
下图为完整配置,需要注明的包括:
马赛克部分为我的代码库地址,不方便放所以隐藏,更换成自己的即可
构建后操作处的name后面的docker-codeus-cloudcompiler是在系统管理中配置的Dockerfile文件所在服务器,目录为/mdata/app/cloudcompiler,也就是打包后jar包推送到的目录,推送后就是shell中变量sourcePATH对应的目录
图中shell脚本里面还有两个变量,$W_VERSION和$BUILD_NUMBER,第一个变量是我自己定义的,第二个变量是jenkins的默认变量,目的是为了每次构建的镜像都有一个序号,下面是配置变量的方法
![](https://img.haomeiwen.com/i11083440/e9753b930ba58244.png)
之后的脚本就简单易懂了,构建镜像,上传仓库,判断前一版本容器是否运行,启动新版容器
![](https://img.haomeiwen.com/i11083440/42f01118ddccbdb0.png)
另附Dockerfile
![](https://img.haomeiwen.com/i11083440/2eb5eefab1aecc72.png)
构建后的镜像样子
![](https://img.haomeiwen.com/i11083440/8d2f72ce39c02e70.png)
这种部署方式是自己在原来非容器化自动部署基础上加入的docker相关shell操作,如有更好的方法请指教,谢谢!
网友评论