文档章节

Jenkins与Docker相关的Plugin使用

donhui
 donhui
发布于 2015/07/21 14:00
字数 439
阅读 8967
收藏 92

##Jenkins与Docker相关的Plugin使用## ###Jenkins与Docker相关的Plugin### 在Jenkins Plugin页面搜索与Docker相关的插件,有如下几个:

  • CloudBees Docker Build and Publish plugin — This plugin provides the ability to build projects with a Dockerfile, and publish the resultant tagged image (repo) to the docker registry.
  • Docker build step plugin — This plugin allows to add various Docker commands into you job as a build step.
  • Docker Plugin — This plugin allows slaves to be dynamically provisioned using Docker.
  • Kubernetes Plugin — This plugin allows slaves to be dynamically provisioned on multiple Docker hosts using Kubernetes.
  • Docker Commons Plugin — APIs for using Docker from other plugins.

其中,它们间的关系如下:

  • Docker commons Plugin为其他与Docker相关的插件提供了APIs
  • CloudBees Docker Build and Publish plugin和Docker build step plugin都依赖了Docker commons Plugin
  • Kubernetes Plugin依赖了Docker Plugin

下面主要介绍下Docker build step plugin和CloudBees Docker Build and Publish plugin的使用。

###Docker build step plugin使用###

####设置Docker URL#### 系统管理→系统设置→Docker Builder,设置Docker URL并测试连接。

docker-build-step

####在Jenkins JOB的构建区域,增加构建步骤→Execute Docker container#### 有一系列Docker Command可选择

docker-build-step

docker-build-step

####以重启一个容器为例#### 选择Restart containers命令,并填写Container ID(s):

docker-build-step

Jenkins JOB创建成功后,点击构建,日志输出如下:

docker-build-step

####以Push镜像到Docker registry为例#### 选择Push images命令,并填写相关信息:

docker-build-step

Jenkins JOB创建成功后,点击构建,日志输出如下:

docker-build-step

###Docker Build Publish Plugin使用###

####设置源码地址,这里使用的是GIT@OSC#### 该项目是个Docker化的项目,Dockerfile在根目录下

docker-build-publish

####在Jenkins JOB的构建区域,增加构建步骤→Docker Build and Publish#### docker-build-publish

此外,Docker Build Publish Plugin还要一些高级选项

docker-build-publish

####Jenkins JOB创建成功后,点击构建,日志输出如下#### docker-build-publish

###参考###

© 著作权归作者所有

donhui

donhui

粉丝 51
博文 88
码字总数 42327
作品 2
杭州
其他
私信 提问
加载中

评论(9)

QinRoc
QinRoc

引用来自“jay_”的评论

请教下Docker URL填什么? 我写我自己的docker registry的地址 http://IP:5000 测试总是失败Something went wrong, cannot connect to http://10.20.2.54:5000/, cause: null
需要用tcp而非http
tcp://10.20.2.54:5000/
啦啦啦拉拉
啦啦啦拉拉
可以热更新嘛
冶金图图
冶金图图

引用来自“jay_”的评论

请教下Docker URL填什么? 我写我自己的docker registry的地址 http://IP:5000 测试总是失败Something went wrong, cannot connect to http://10.20.2.54:5000/, cause: null

引用来自“donhui”的评论

Docker URL和Docker registry URL不是一回事。 URI to the Docker server you are using. May be left blank to use the Docker default (typically unix:///var/run/docker.sock). 当然如果开启了Docker remote API,也可以使用tcp协议
请教一下,我在centos6.5下配置了远程docker的配置文件DOCKER_OPTS="-H unix:///var/run/docker.sock -H 0.0.0.0:6666",重启服务后,测试发现报同样的错,再查看端口发现却没有监听6666,求解
donhui
donhui 博主

引用来自“jay_”的评论

请教下Docker URL填什么? 我写我自己的docker registry的地址 http://IP:5000 测试总是失败Something went wrong, cannot connect to http://10.20.2.54:5000/, cause: null
Docker URL和Docker registry URL不是一回事。 URI to the Docker server you are using. May be left blank to use the Docker default (typically unix:///var/run/docker.sock). 当然如果开启了Docker remote API,也可以使用tcp协议
jay_
jay_
请教下Docker URL填什么? 我写我自己的docker registry的地址 http://IP:5000 测试总是失败Something went wrong, cannot connect to http://10.20.2.54:5000/, cause: null
donhui
donhui 博主

引用来自“lxitgto”的评论

我们现在Gitlab + Gitlab CI都是docker里,build image是我自己写的web hook
这个是我自己玩的,目前没有应用到实际中
lxitgto
lxitgto
我们现在Gitlab + Gitlab CI都是docker里,build image是我自己写的web hook
donhui
donhui 博主

引用来自“hantsy”的评论

用 Jenkins 发布一个Docker Image?

对于项目开发过程的 CI ,如果与 Docker 结合,我更希望,所有资源都是以 Container 方式运行。比如:GIT, MySQL, Java 8(Spring Boot), Jenkins 这些全部放在不同 Container 中,用 Jenkins 取出Git代码,编译,重新启动 Java8(Spring Boot) 部署。
所使用的Jenkins是以Container方式运行的,Java8(Spring Boot)没尝试过,不太明白为何把GIT放到 Container 中
hantsy
hantsy
用 Jenkins 发布一个Docker Image?

对于项目开发过程的 CI ,如果与 Docker 结合,我更希望,所有资源都是以 Container 方式运行。比如:GIT, MySQL, Java 8(Spring Boot), Jenkins 这些全部放在不同 Container 中,用 Jenkins 取出Git代码,编译,重新启动 Java8(Spring Boot) 部署。
持续集成:docker下使用jenkins容器构建docker镜像

最近又重新部署了jenkins持续集成系统,看到之前整理的文章不够详细,于是重新整理了docker下使用jenkins的容器进行持续集成的相关文章,拿来分享下 docker环境 registry镜像:registry:2.6....

gsying1474
2017/07/19
0
0
Jenkins Pinned Plugins(Jenkins绑定插件)

在Jenkins上将Subversion Plugin由捆绑的1.54版本升级到目前(2015/07/15)最新版本2.5.1 在已安装的插件页面(http://my.jenkins.server/pluginManager/installed)发现在【绑定】这一列,S...

donhui
2015/07/16
767
0
Jenkins & Docker 持续集成实践

前言 持续集成(CI/CD)是一种软件开发实践。用于帮助团队成员频繁、快速的集成,测试他们的工作成果,以尽快发现集成错误。 更频繁、更早的集成意味着更早的发现问题。通过持续集成,及时发现...

English0523
2017/12/25
0
0
Jenkins & Docker 持续集成实践

Jenkins & Docker 持续集成实践 运维生存时间 - 运维生存时间2017-12-109 阅读 jenkinsdockerLinux 发表评论 A+ 所属分类: Linux 前言 持续集成(CI/CD)是一种软件开发实践。用于帮助团队成员...

运维生存时间 - 运维生存时间
2017/12/10
0
0
基于Jenkins,docker实现自动化部署(持续交互)【转】

前言 随着业务的增长,需求也开始增多,每个需求的大小,开发周期,发布时间都不一致。基于微服务的系统架构,功能的叠加,对应的服务的数量也在增加,大小功能的快速迭代,更加要求部署的快...

sunsky303
2018/06/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

zk中leader和follower启动时信息交互

QuorumPeer中读取节点状态信息,不同状态下设置不同角色 1 Leader启动Follower接收器LearnerCnxAcceptor LearnerCnxAcceptor负责接收非leader连接请求,线程中创建LearnerHandler处理器 2 Le...

writeademo
32分钟前
4
0
完美的Linux之【navi】使用笔记

今天要说的是才上线才两天,就已经获得超过1000星。开发者是一位来自巴西的小哥Denis Isidoro。 开发的工具navi Linux用户的日常困惑 > 新命令 用完就忘 ? > 一时想不起来命令的单词怎么拼?...

我们都很努力着
34分钟前
4
0
iptables删除命令中的相关问题

最近在做一个V**N中间件的配置工作,在配置iptables的时候,当用户想删除EIP(即释放当前连接),发现使用iptables的相关命令会提示错误。iptables: Bad rule (does a matching rule exist ...

Linux就该这么学
46分钟前
3
0
ExtJS 4.2 评分组件

本文转载于:专业的前端网站➸ExtJS 4.2 评分组件 上一文章是扩展ExtJS自带的Date组件。在这里将创建一个评分组件。 目录 1. 介绍 2. 示例 3. 资源下载 1. 介绍 代码参考的是 Sencha Touch 2...

前端老手
54分钟前
4
0
springboot2.0.6启动解析(四)观察器、启动的错报告、Headless模式相关分析

解析SpringApplication的run方法观察器、启动的错报告、Headless模式、监听器相关分析 public ConfigurableApplicationContext run(String... args) { // 构造一个任务执行观察器(Jav...

小亮89
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部