Jenkins+GitLab+Maven+Shell自动化构建实施案例(4)

构建sms-tmp-release项目,此项目执行完成后,自动构建关联的下级项目sms-tmp-ms,sms-tmp-ms项目会Jenkins中自动拉取最新代码,触发rsync同步脚本,rsync脚本里触发docker镜像build和push操作。Jenkins最终构建完成后,即可将镜像仓库拉取最新交付的镜像。

3.7 发布已构建镜像
进入rancher控制台

添加服务tmp-sms-ms:

Docker微服务-Jenkins+Gitlab+Maven+Shell自动化构建实施案例

映射卷:

Docker微服务-Jenkins+Gitlab+Maven+Shell自动化构建实施案例

点击“创建”,选中“创建前总是拉取镜像”,rancher便会分发任务至agent,进行最新镜像的拉取。
其中镜像为已在rancher宿主机上,进行手动镜像构建交付到阿里云镜像仓库的。并非通过Jenkins自动构建交付到阿里云镜像仓库。

3.8 镜像升级、回滚操作
升级步骤:
停止该服务正在运行的容器
拉取最新镜像
运行新容器

回滚:
如果不单击rancher控制台右上角“Upgraded”,该服务可进行回滚操作。
rancher控制台上方为“stopped”状态的容器为旧容器,单击“启动”按钮可进行回滚;
下方为“Running”状态的容器为升级的容器,单击右上角“Upgraded”按钮可进行回滚;容器镜像升级完成,旧容器销毁。

Docker微服务-Jenkins+Gitlab+Maven+Shell自动化构建实施案例

3.9 阿里云镜像仓库交付的镜像

Docker微服务-Jenkins+Gitlab+Maven+Shell自动化构建实施案例

说明:以上配置了两个基础服务容器的持续交付,一个常规服务容器的持续交付,其他的容器服务持续交付类似操作,这不做重复操作。其中,构建、推送镜像仓库的脚本里对应的IP配置为生产环境地址,由于此次测试环境为内网,无外网IP。所以,涉及到镜像的push操作无法操作成功。各个服务provider的打包,如要在Jenkins中自动操作,无法完成。所以,均从其他已打好包的服务器上拷贝过来,然后在rancher宿主机进行构建、推送push到阿里云镜像仓库。

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/26b79292d9bfe1885740597cc14ec236.html