[Tech] 我用Jenkins玩Docker

上一篇说到使用Docker搭建Jenkins容器以及配套的Agent节点容器。此时问题来了,平时有很长一段时间都是没有CI项目需要执行的,而固定的容器这是就可以说是一种资源浪费了,所以可不可以动态地去创建容器,当有任务执行时,容器被创建,任务执行完后容器被销毁呢?

Jenkins的Docker插件就可以实现这个需求哦。

首先把原先的agent容器断开,在Jenkins插件管理中下载安装Docker

《[Tech] 我用Jenkins玩Docker》 Docker插件

系统管理配置中的里,添加一个Docker云Docker Host URI指向Docker服务器端口(谁能告诉我MacOS的Docker Host URI应该怎么配 =。=,尝试很多种方法都不对),随后点击Test Connection,检查是否能连通。

《[Tech] 我用Jenkins玩Docker》 系统配置

进入具体CI项目的配置,选择Define a Docker template,选择所连Docker服务器上已存在的合适镜像,Connect method我选了SSH key,为了在每次任务执行后都能删除容器,这里需要勾选Remove volumes

《[Tech] 我用Jenkins玩Docker》 项目配置

执行一下任务,这是会发现当任务属于执行状态时,会增加一个docker节点,而当任务执行完毕后,这个节点会消失。

《[Tech] 我用Jenkins玩Docker》 运行时动态创建节点

Done!

    原文作者:敲代码的密斯想
    原文地址: https://www.jianshu.com/p/05a4f5dbc2d1
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞