• 1
  • 2
  • 3
  • 4
  • 5
阿里云应用开发 首 页  »  帮助中心  »  云服务器  »  阿里云应用开发
如何使用docker来提升你的Jenkins演示的方法介绍
发布日期:2016-3-13 13:3:56
 

  如何使用docker来提升你的Jenkins演示的方法介绍

  一、Jenkins是什么

  Jenkins (http://jenkins-ci.org) 几乎是CI(持续集成)的代名词。 它有一个大的社区,有很多插件一起提供了很强大的功能。为了学习这些东西,最好的办法将是通过设置环境来实践它。

  此外如果你想给别人介绍jenkins的新功能,你很想为这些功能快速创建一个演示环境。

  怎样能够轻松地完成? 我最喜欢用Docker来实现这一点。

  在这个博客系列,我会用一些例子一步一步来说明如何实现这一目标。

  演示Jenkins的小功能 - AnsiColor插件

  Jenkins AnsiColor plugin 是我最喜欢的小插件之一,它能够把你控制台日志看起来更好。如下图所示:

  所以我想给大家一个演示环境来尝试,而不需在本地Jenkins上安装。我一般推荐在正式部署之前尝试一下。

  结果

  让我们来立即来看看效果,或许你也可能只是对这个功能感兴趣。如下图所示:

  在控制台窗口中上Jenkins已经被启动,然后可以打开浏览器访问8080端口。如下图所示:

  看起来相当不错,一个叫craft的任务(job)已经存在了,Jenkins显示是最新的LTS版本1.580.1

  点击craft任务,并运行它,然后检查console。太棒了,部分结果可以有颜色显示了,这就是我们要的。如下图所示:

  然后回过头来看看它是怎样配置。如下如所示:

  现在演示完毕,可以学习如何做到的。

  二、它是怎样工作的

  这里是Dockerfile, 参见github上的源代码,如下图所示:

  开始安装openjdk/curl包,并设置Jenkins启动时所需要的相关环境。

  Jenkins 的应用程序 (.war)可以在http://jenkins-ci.org/找到, 你可以选择最新的版本或LTS(长期支持)版本稳定,这里我选择LTS版本http://mirrors.jenkins-ci.org/war-stable/latest/jenkins.war

  所有的插件可以在镜像站点上找到:http://mirrors.jenkins-ci.org/, 你需要找到你的插件Plugin Id像ansicolor,它会映射到http://mirrors.jenkins-ci.org/plugins/ansicolor/latest/ansicolor.hpi,如下图所示:

  在jenkins中,任务的配置保存为config.xml。这里我们提前做好了,把它放在docker镜像里的$JENKINS_HOME/jobs/craft目录下。如下图所示:

  最简单的方法是直接从运行的Jenkins得到这个config.xml文件(在你的任务URL后面追加config.xml就可以了)。如下图所示:

  而在最后,加上一个小脚本start.sh,它将在启动时启动Jenkins。如下图所示:

  然后,你能够建立自己的docker镜像了,就这么简单。如下图所示:

  三、怎样公开分享

  你能够把你的项目放到github上或者bitbucket ,并在http://hub.docker.com运行在您的构建 ,然后其他人能够简单的运行docker的命令来运行它(您可以自己搜索具体怎么做)。如下图所示:

  四、摘要

  在这篇博客中,我们演示了怎样dockerize你的Jenkins应用程序,它包含了必须的插件和配置和实例任务。 这将会很容易让你的听众了解你想演示的功能。

  所有的代码你都可以在github上的jenkins-demo1上找到。

  现在,您能够把您的漂亮的Jenkins新功能打包到Docker到处演示。

  在接下来的博客中,我将展示如何更好地组织Jenkins目录。

  Docker可以帮助我们做很多事情。

  本文出自:larrycaiyu