持续集成之jenkins实践教程:基础篇(5): 集成docker
来源:互联网 发布:python写淘宝秒杀脚本 编辑:程序博客网 时间:2024/05/17 23:56
作为持续集成的利器Jenkins已经得到了广泛地应用,仅仅作为一个工具,Jenkins已然有了自己的生态圈,支持其的plugin更是超过1300+。在实际中如何使用以及如何更好地使用jenkins,一直是大家在实践并讨论的。本系列文章将会从如何使用jenkins方面对一些细节进行总结和整理,这篇文章将会介绍如何在Jenkins中实现与docker的集成
事前准备
只要有jenkins即可,没有的可以使用Jenkins官方的镜像或者安装包,或者使用Easypack中封装的基本一致的Jenkins。
docker pull镜像
[root@liumiaocn ~]# docker pull liumiaocn/jenkinsUsing default tag: latestlatest: Pulling from liumiaocn/jenkinsDigest: sha256:87c954f71bc3ce1ba5d001bfbae501f9965368c16f0111ef951350376c2f6832Status: Image is up to date for liumiaocn/jenkins:latest[root@liumiaocn ~]#
启动Jenkins镜像
docker run -d -p 8090:8080 -p 50000:50000 –name jenkins liumiaocn/jenkins
[root@liumiaocn ~]# docker run -d -p 8090:8080 -p 50000:50000 --name jenkins liumiaocn/jenkins63dc2d52de03074858a6b61db4955345a66cfd436c5a47384924e9e3f8177778[root@liumiaocn ~]#
plugin
与docker的集成也是通过插件来做的, 这里选择的是安装docker-build-step插件,目前版本是1.4.3,通过使用这个插件进行集成能够使得在jenkins中执行很多docker的操作诸如:
详细说明如下图所示
安装
可以使用jenkins的插件管理页面进行安装,也可以使用其id(docker-build-step)在镜像中进行安装并重启镜像即可。
[root@liumiaocn ~]# docker exec -it jenkins sh/ $ install-plugins.sh docker-build-stepCreating initial locks...Analyzing war...Downloading plugins...Downloading plugin: docker-build-step from https://updates.jenkins.io/download/plugins/docker-build-step/latest/docker-build-step.hpi > docker-build-step depends on credentials:1.22,docker-commons:1.4.0Downloading plugin: credentials from https://updates.jenkins.io/download/plugins/credentials/latest/credentials.hpiDownloading plugin: docker-commons from https://updates.jenkins.io/download/plugins/docker-commons/latest/docker-commons.hpi > credentials depends on structs:1.7Downloading plugin: structs from https://updates.jenkins.io/download/plugins/structs/latest/structs.hpi > docker-commons depends on icon-shim:1.0.3,credentials:2.1.11,credentials-binding:1.12,authentication-tokens:1.1Downloading plugin: icon-shim from https://updates.jenkins.io/download/plugins/icon-shim/latest/icon-shim.hpiDownloading plugin: credentials-binding from https://updates.jenkins.io/download/plugins/credentials-binding/latest/credentials-binding.hpiDownloading plugin: authentication-tokens from https://updates.jenkins.io/download/plugins/authentication-tokens/latest/authentication-tokens.hpi > authentication-tokens depends on credentials:1.22 > credentials-binding depends on workflow-step-api:2.9,credentials:2.1.7,plain-credentials:1.3,structs:1.5Downloading plugin: workflow-step-api from https://updates.jenkins.io/download/plugins/workflow-step-api/latest/workflow-step-api.hpiDownloading plugin: plain-credentials from https://updates.jenkins.io/download/plugins/plain-credentials/latest/plain-credentials.hpi > workflow-step-api depends on structs:1.5 > plain-credentials depends on credentials:2.1.5WAR bundled plugins:Installed plugins:authentication-tokens:1.3credentials-binding:1.12credentials:2.1.14display-url-api:2.0docker-build-step:1.43docker-commons:1.7git-client:2.4.6git:3.3.1gitlab-plugin:1.4.6icon-shim:2.0.3jquery:1.11.2-0junit:1.20mailer:1.20mapdb-api:1.0.9.0matrix-project:1.11plain-credentials:1.4redmine:0.20scm-api:2.1.1script-security:1.29sonar:2.6.1ssh-credentials:1.13structs:1.9subversion:2.8workflow-scm-step:2.6workflow-step-api:2.12Cleaning up locks/ $ exit[root@liumiaocn ~]# docker restart jenkinsjenkins[root@liumiaocn ~]#
插件安装确认
重新启动后确认此插件已经安装完毕
设定内容
系统管理 -> 系统设置处的Gitlab相关内容则为所需设定的内容
验证
设定完毕之后,点击Test Connection便可以确认jenkins和docker之间是否通过此插件进行了集成。页面显示”Connected to tcp://192.168.32.131:4243”说明已经OK。
总结
Jenkins与docker设定需要下载并安装docker-build-step插件,通过设定docker URL便可以使用插件提供的测试功能进行集成连接确认。
- 持续集成之jenkins实践教程:基础篇(5): 集成docker
- 持续集成之jenkins实践教程:基础篇(2): 集成gitlab
- 持续集成之jenkins实践教程:基础篇(3): 集成sonarqube
- 持续集成之jenkins实践教程:基础篇(4): 集成redmine
- Jenkins & Docker 持续集成实践
- 持续集成之jenkins实践教程:基础篇(1): 邮件设置
- Jenkins持续集成教程
- 持续集成实践二之Jenkins与Sonar Qube集成
- 持续集成 之 Jenkins
- 持续集成之Jenkins
- 持续集成 之 Jenkins
- 持续集成 之 Jenkins
- Jenkins + Github持续集成构建Docker容器
- Jenkins+Docker搭建持续集成测试环境
- Jenkins+Docker搭建持续集成测试环境
- Jenkins+Docker搭建持续集成测试环境
- Jenkins持续集成构建Docker容器
- Jenkins+Docker搭建持续集成测试环境
- GDOI模拟7.8-7.16 总结
- 极值栈的设计—以最小栈为例
- Java for Web学习笔记(六九):Service和Repository(4)Principal
- STM32Cube库的使用
- Linux2.6--进程抢占和上下文切换
- 持续集成之jenkins实践教程:基础篇(5): 集成docker
- Go语言实战--并发示例-Pool
- 列表和按钮
- 如何训练深度神经网络?老司机的15点建议
- Angular中的内置指令
- 过滤器和拦截器的区别
- Android消息机制学习记录
- Appium Python API 中文版 By-HZJ
- react-navigation使用技巧