jenkins 系列文章,包含效果演示(2021-01-25 10:10:25 效果演示到期,轻量应用服务器只申请了试用2个月时间)以及实现说明:
jenkins实现 windows server 2012环境下自动部署war
jenkins实现Centos 7 下自动部署war
jenkins 实现gitbook项目(电子书)的自动发布
jenkins 实现源码到docker镜像的自动部署运行
看过前3篇文章, 大家应该对java工程jenkins里的打包流程非常熟悉了!将打包好的程序war或jar 通过jenkins上传到网站服务器已经不是什么难事!
现在基于上面的前提来实现docker镜像的更新自动部署运行。我们采取在服务端使用jar或war生成docker镜像的思路,将问题分解为以下几步:
- 停止删除当前应用后删除旧镜像
- 编写Dockerfile文件定义镜像制作步骤
- 编写docker-compose.yml 文件定义服务镜像/端口/日志等。
- jenkins 调用docker-compose命令创建新的镜像并启动服务
控制台地址: https://jks.00fly.online/job/demo-docker/
项目源码: https://gitee.com/00fly/docker-demo
项目地址: https://test.001fly.top/user/
Portainer: http://49.235.100.198:8082/ 帐号admin/admin123
效果展示:
打包成功时间 15:43:09
开始上传时间 15:43:09
执行脚本完成时间 15:44:11
网站显示镜像内war生成UTC时间为 07:44:06 换算成北京时间+8为 15:44:06
jenkins配置关键步骤为
编写的核心配置文件以及脚本为:
全部工程和脚本已经上传到 https://gitee.com/00fly/docker-demo/tree/master
写的仓促,不足之处,欢迎大家提问!