Docker与Jenkins Pipelines有什么好处?

时间:2018-01-10 06:00:12

标签: docker jenkins

我是Jenkins / Docker的新手。到目前为止,我发现许多Jenkins官方文档建议与Docker一起使用。但是将Jenkins作为docker容器运行的必要性和优势对我来说仍然模糊不清。就我而言,它是一个节点/反应应用程序,所需的环境并不复杂。

缺点我发现将Jenkins作为Docker容器运行:

  1. 硬盘使用率高
  2. docker容器中的目录路径处理起来比较复杂,尤其是在管道脚本中使用ssh
  3. 没有docker,我可以很容易地实现相同的功能,并且还有blueocean插件可供使用。

    那么,Docker与Jenkins / Jenkins Pipeline的主要好处是什么?使用Jenkins而没有Docker的节点应用程序是否存在缺陷?我们也非常感谢帮助我深入了解的文章。

1 个答案:

答案 0 :(得分:0)

詹金斯为代码

Jenkins在Docker中的主要优点是可以帮助您获得:Jenkins as Code

詹金斯代码的优点是:

  • SCM:可以在版本控制下放置代码
    • 历史透明,备份和回滚变得容易。
    • 代码是您的Jenkins设置的文档。
  • Jenkins变得可移植,因此您可以在本地运行Jenkins来尝试新的插件等。
  • Jenkins管道与Docker配合得很好。正如@Ivthillo提到的那样:无需安装其他工具,您只需使用这些工具的图像即可。 Jenkins将为您从Internet下载它们(Docker Hub)。 对于管道中的每个阶段,您可以使用不同的图像(即工具)。本质上,您会获得仅存在于临时的“微型詹金斯代理”。这使您的Jenkins设置更加干净。

缺点是:

  • Jenkins的初始(Groovy)配置在网络上的记录很少。

简单节点设置

大多数参数也适用于简单的Node设置。

  • 更改节点版本或使用不同的节点版本运行多个作业变得容易。
  • 将您的Jenkinsfile添加到Node存储库中。因此,具有Jenkins + Docker设置的每个人都可以运行您的CI / CD。
  • 最后:在容器内运行应用程序的知识将使您将来能够在Docker中运行生产应用程序。

开始使用

前一段时间,我在how to get started with Jenkins and Docker上写了一个小博客,即创建Jenkins映像进行开发,您可以在几秒钟内启动和销毁该映像。