写点什么

22 款受欢迎的 CI 工具,你想要的都在这里!

  • 2020 年 5 月 14 日
  • 本文字数:4811 字

    阅读完需:约 16 分钟

22款受欢迎的CI工具,你想要的都在这里!

市场上持续集成工具众多,找到一个合适的工具并非易事。本文将汇总介绍 22 个比较受欢迎的 CI 工具,其中有开源产品也有商业闭源产品,我们将总结每个工具的特点,并附上了下载链接。


1. Buddy

对 Web 开发者来说,Buddy 是一个智能的 CI/CD 工具,降低了 DevOps 的入门门槛。Buddy 使用 DeliveryPipeline 进去软件构建、测试及发布,创建 Pipeline 时,100 多个就绪的操作可随时投入使用,就像砌砖房一样。


特点:


  • 清晰的配置,友好的交互,15 分钟快速配置

  • 基于变更集(changeset)的快速部署

  • 构建运行在使用缓存依赖的独立容器中

  • 支持所有流行的语言、框架和任务管理器

  • Docker / Kubernetes 专用操作手册

  • 与 AWS,Google,DigitalOcean,Azure,Shopify,WordPress 等集成

  • 支持并行和 YAML 配置


下载链接:https://buddy.works


2. Jenkins

Jenkins 是一个开源的持续集成工具,使用 Java 编程语言编写的。它有助于实时检测和报告较大代码库中的单一更改。该软件可帮助开发人员快速查找和解决代码库中的问题并自动测试其构建。


特点:


  • 支持海量节点扩展并在节点中同等分发工作负载

  • 在各版本 Linux、Mac OS 或 Windows 等全平台轻松更新

  • 提供了 WAR 格式的简易安装包,执行导入 JEE 容器中即可运行安装

  • 可以通过 Web 界面轻松设置和配置 Jenkins

  • 可轻松跨机器分发


下载链接:https://jenkins.io/download/


3. TeamCity

TeamCity 是一款拥有很多强大功能的持续集成服务器。


特点:


  • 可扩展性和自定义

  • 为项目提供更好的代码质量

  • 即使没有运行构建,也能保持 CI 服务器健康稳定

  • 可在 DSL 中配置构建

  • 项目级云配置文件

  • 全面的 VCS 集成

  • 即时构建进度报告

  • 远程运行和预先测试的提交


下载链接:https://www.jetbrains.com/teamcity/download/#section=windows


4. Drone

Drone 是一个非常的开源 CI 工具。它其实是原生 Docker,所有的进程都在容器内进行。这也使得 Drone 非常适合像 Kubernetes 这样的平台,因为在 Kubernetes 上启动容器很简单。


特点:


  • 配置为代码:Pipeline 配置了一个简单易读的文件,可以直接提交至 git 仓库;每个 Pipeline 步骤都在一个隔离的 Docker 容器中执行。

  • 创建和共享插件:Drone 使用容器将预先配置的步骤放入 pipeline 中,用户可以从数百个现有插件中进行选择,或创建自己的插件。

  • 易于定制:实现自定义访问控制、批准工作流、机密管理、yaml 语法扩展等。

  • 易于安装:Drone 为开源产品,用户可下载官方 Docker 镜像或从源代码构建。


下载链接:https://drone.io


5. Travis CI

Travis 是一款流行的 CI 工具,可免费用于开源项目。在托管时,不必依赖任何平台。此 CI 工具为许多构建配置和语言提供支持,如 Node,PHP,Python,Java,Perl 等。


特点:


  • Travis 使用虚拟机构建应用程序

  • 可通过 Slack,HipChat,电子邮件等通知

  • 允许运行并行测试

  • 支持 Linux、Mac 以及 iOS

  • 易于配置,无需安装

  • 强大的 API 和命令行工具


下载链接:https://github.com/travis-ci/travis-ci


6. GoCD

GoCD 是一个开源的持续集成服务器。它可轻松模拟和可视化复杂的工作流程。此 CI 工具允许持续交付,并为构建 CD Pipeline 提供直观的界面。


特点:


  • 支持并行和顺序执行,可以轻松配置依赖

  • 随时部署任何版本

  • 使用 Value Stream Map 实时可视化端到端工作流程

  • 安全地部署到生产环境

  • 支持用户身份验证和授权

  • 保持配置有序

  • 有大量的插件增强功能

  • 活跃的社区帮助和支持


下载链接:https://www.gocd.org/download/


7. Bamboo

Bamboo 是一个持续集成的构建服务器,可以自动构建、测试和发布,并可与 JIRA 和 Bitbucket 无缝协作。Bamboo 支持多语言和平台,如 CodeDeply、Ducker、Git,SVN、Mercurial、AWS 及 Amazon S3 bucket。


特点:


  • 可并行运行批量测试

  • 配置简单

  • 分环境权限功能允许开发人员和 QA 部署到他们的环境

  • 可以根据 repository 中检测到的更改触发构建,并从 Bitbucket 推送通知

  • 可托管或内部部署

  • 促进实时协作并与 HipChat 集成

  • 内置 Git 分支和工作流程,并自动合并分支


下载链接:https://www.atlassian.com/software/bamboo


8. Gitlab CI

GitLab CI 是 GitLab 的一部分。它是一个提供 API 的 Web 应用程序,可将其状态存储在数据库中。GitLab CI 可以管理项目并提供友好的用户界面,并充分利用 GitLab 所有功能。


特点:


  • GitLab Container Registry 是安全的 Docker 镜像注册表

  • GitLab 提供了一种方便的方法来更改 issue 或 merge request 的元数据,而无需在注释字段中添加斜杠命令

  • 为大多数功能提供 API,允许开发人员进行更深入的集成

  • 通过发现开发过程中的改进领域,帮助开发人员将他们的想法投入生产

  • 可以通过机密问题保护您的信息安全

  • GitLab 中的内部项目允许促进内部存储库的内部 sourcing


下载链接:https://about.gitlab.com/installation/


9. CircleCI


Circle CI 是一个灵活的 CI 工具,可在任何环境中运行,如跨平台移动应用程序、Python API 服务器或 Docker 集群,该工具可减少错误并提高应用程序的质量。


特点:


  • 允许选择构建环境

  • 支持多语言及平台,如 Linux,包括 C ++,Javascript,NET,PHP,Python 和 Ruby

  • 支持 Docker,可以配置自定义环境

  • 触发较新的构建时,自动取消排队或正在运行的构建

  • 跨多容器分割和平衡测试,以减少总体构建时间

  • 禁止非管理员修改关键项目配置

  • 通过发送无错误的应用程序提高 Android 和 iOS 商店评级

  • 最佳缓存和并行性能,实现高性能

  • 与 VCS 工具集成


下载链接:https://circleci.com/


10. Codeship

Codeship 是一个功能强大的 CI 工具,可自动化开发和部署工作流程。Codeship 通过简化到 repository 的 push 来触发自动化工作流程。


特点:


  • 可完全控制 CI 和 CD 系统的设计。

  • 集中的团队管理和仪表板

  • 轻松访问调试版本和 SSH,有助于从 CI 环境进行调试

  • 可完全定制和优化 CI 和 CD 工作流程

  • 允许加密外部缓存的 Docker 镜像

  • 允许为您的组织和团队成员设置团队和权限

  • 有两个版本 1)Basic 和 2)Pro


下载链接:https://codeship.com/


11. Buildbot

Buildbot 是一个软件开发 CI,可以自动完成编译/测试周期。它被广泛用于许多软件项目,用以验证代码更改。它提供跨平台 Job 的分布式并行执行。


特点:


  • 为不同体系结构的多个测试主机提供支持。

  • 报告主机的内核崩溃

  • 维护单源 repository

  • 自动化构建

  • 每个提交都在集成机器上的主线上构建

  • 自动部署

  • 开源


下载链接:https://buildbot.net/


12. Nevercode

Nevercode 是一个基于云端的 CI 传送服务器,可以构建、测试和分发应用程序而无需人工交互。此 CI 工具自动为每个提交构建项目,并在模拟器或真实硬件上运行所有单元测试 或 UI 测试。


特点:


  • 基于云服务,因此无需维护服务器

  • 易于学习和使用

  • 良好的文档,易于阅读和理解

  • 通过持续集成和交付自动化整个开发过程

  • 与众多工具集成


下载链接:https://nevercode.io/


13. Integrity

Integrity 是一个持续集成服务器,仅适用于 GitHub。在此 CI 工具中,只要用户提交代码,它就构建并运行代码。它还会生成报告并向用户提供通知。


特点:


  • 目前仅适用于 Git,但它可以轻松地映射其他 SCM

  • 支持多通知机制,如 AMQP,电子邮件,HTTP,Amazon SES,Flowdock,Shell 和 TCP

  • HTTP 通告功能将以 HTTP POST 请求发送到特定 URL


下载链接:http://integrity.github.io/


14. Strider

Strider 是一个开源工具,用 Node.JS / JavaScript 编写。它使用 MongoDB 作为后端存储。因此,MongoDB 和 Node.js 对于安装此 CI 至关重要。该工具为不同的插件提供支持,这些插件可修改数据库 schema 并注册 HTTP 路由。


特点:


  • Strider 可与 GitHub,BitBucket,Gitlab 等集成。

  • 允许添加钩子来执行构建操作

  • 持续构建和测试软件项目

  • 与 GitHub 无缝集成

  • 发布和订阅 socket 事件

  • 支持创建和修改 Striders 用户界面

  • 强大的插件,定制默认功能

  • 支持 Docker


下载链接:https://github.com/Strider-CD/strider


15. AutoRABIT

AutoRABIT 是一个端到端的持续交付套件,可以加快开发过程。它简化了完整的发布流程,并可以帮助任何规模的组织实现持续集成。


特点:


  • 专门设计用于在 Salesforce Platform 上部署

  • 支持基于 120 多种元数据类型的更改,实现精简和快速部署

  • 从版本控制系统获取更改并自动部署到 Sandbox 中

  • 直接从 Sandbox 自动向版本控制系统提交更改


下载链接:http://www.autorabit.com/tag/autorabit-download/


16. FinalBuilder

FinalBuilder 是 VSoft 的构建工具。使用 FinalBuilder,无需编辑 XML 或编写脚本。在使用 Windows 调度程序调度构建脚本时,可以定义和调试构建脚本,或者与 Jenkins,Continua CI 等集成。


特点:


  • 以逻辑结构化的图形界面呈现构建过程

  • 使用 try 和 catch 操作处理本地错误

  • 与 Windows 调度服务紧密集成,支持定时构建

  • 支持十几个版本控制系统

  • 提供脚本支持

  • 构建过程中所有操作的输出都将定向到构建日志


下载链接:https://www.finalbuilder.com/downloads/finalbuilde


17. Wercker

Wercker 是一个 CI 工具,可自动构建和部署容器。它可以创建可以通过命令行界面执行的自动化管道。


特点:


  • 与 GitHub 和 Bitbucket 完全集成

  • 使用 Wercker CLI 进行更快的本地迭代

  • 同时执行构建以保持团队的机动

  • 运行并行测试以减少团队的等待时间

  • 集成了 100 多种外部工具

  • 通过产品和电子邮件接收系统通知


下载链接:http://www.wercker.com/


18. Buildkite

Buildkite 代理是一个可靠的跨平台构建工具。此 CI 工具可以在础架构上轻松地运行自动构建。它主要用于运行构建 Job,报告 Job 的状态代码并输出日志。


特点:


  • 可在各种操作系统和体系结构上运行

  • 可以从任何版本控制系统运行代码

  • 允许在计算机上运行任意数量的构建代理

  • 可与 Slack,HipChat,Flowdock,Campfire 等工具集成

  • 永远不会读取源代码或密钥

  • 提供稳定的基础设施


下载链接:https://buildkite.com/


19. Semaphore

Semaphore 是一个持续集成工具,只需按一下按钮即可测试和部署代码。它支持多种语言、框架并可与 GitHub 集成,还可以执行自动测试和部署。


特点:


  • 配置简单

  • 允许自动并行测试

  • 市场上最快的 CI 之一

  • 可以轻松覆盖不同大小的项目数量

  • 与 GitHub 和 Bitbucket 无缝集成


下载链接:https://semaphoreci.com


20. CruiseControl

CruiseControl 既是 CI 工具又是一个可扩展的框架。它用于构建自定义连续的构建。它有许多用于各种源代码控制的插件,包括针对电子邮件和即时消息的构建技术。


特点:


  • 与许多不同的源代码控制系统集成,如 vss,csv,svn,git,hg,perforce,clearcase,filesystem 等

  • 允许在单个服务器上构建多个项目

  • 与其他外部工具集成,如 NAnt,NDepend,NUnit,MSBuild,MBUnit 和 Visual Studio

  • 支持远程管理


下载链接:http://cruisecontrol.sourceforge.net/download.html


21. Bitrise

Bitrise 是一个持续集成和交付 PaaS,它可以为整个团队提供移动持续集成和交付。它允许与 Slack,HipChat,HockeyApp,Crashlytics 等许多流行服务集成。


特点:


  • 允许在终端中创建和测试工作流程

  • 无需手动控制即可获得应用程序

  • 每个构建在其自己的虚拟机中单独运行,并且在构建结束时丢弃所有数据

  • 支持第三方 beta 测试和部署服务

  • 支持 GitHub Pull Request


下载链接:https://github.com/bitrise-io/bitrise#install-and-setup


22. UrbanCode

IBM UrbanCode 是一个 CI 应用程序。它将强大的可见性,可追溯性和审计功能整合到一个软件包中。


特点:


  • 通过自动化,可重复的部署流程提高软件交付频率

  • 减少部署失败

  • 简化多渠道应用程序的部署,无论是在本地还是在云中,都可以部署到所有环境

  • 企业级安全性和可扩展性

  • 混合云环境建模

  • 拖放自动化


下载链接:https://www.ibm.com/ms-en/marketplace/application-release-automation


结语

容器技术被越来越多地用于大型项目之中,如何通过一致的流程和工作流来简化大型项目的部署,变得愈发重要。Rancher Kubernetes 管理平台让用户通过一个自动化的过程,即可方便快速地创建及管理多 Kubernetes 集群。Rancher 平台对 Jenkins、GitLab CI、Drone 等流行的 CI 工具都提供了优秀的支持,内嵌的 Rancher Pipeline 也有着极简的操作体验和强大的功能整合。作为用户,使用场景和需求都不尽相同,选择最适合自己的就好。


2020 年 5 月 14 日 22:262692

评论

发布
暂无评论
发现更多内容

不会吧不会吧?字节“百万级,nginx视频教程吾爱破解

Java 程序员 后端

为什么我不建议你用阿里巴巴Java规范,而使用 Google Guava 编程?

Java 程序员 后端

主动学习微服务架构深度解析:微服务的采用前提,微服务使用场景

Java 程序员 后端

为什么不想做Java了,6年经验去面试10分钟结束,现在Java面试怎么这么难

Java 程序员 后端

为什么不想做Java了, 现在Java面试怎么这么难,从自身找原因

Java 程序员 后端

架构实战营模块二作业

孙志强

架构实战营

五分钟搞懂spring-cloud-square,linux服务器开发需要的技术

Java 程序员 后端

不要再本地启动项目调试了,试SpringBoot远程调试你会发现新大陆!

Java 程序员 后端

世界顶级SQL技术专家呕心沥血半年才整理出这份:SQL优化核心思想笔记,手慢无

Java 程序员 后端

为了面试阿里巴巴、腾讯、字节跳动,linux内核架构

Java 程序员 后端

不是吧,就因为他和面试官多聊了半个小时红黑树,进了腾讯

Java 程序员 后端

两年JAVA程序员的面试总结,mysql索引原理

Java 程序员 后端

为什么一个还没毕业的大学生能够把 IO 讲的这么好?

Java 程序员 后端

不错,这么好的东西不白嫖也太可惜了!阿里内部首发

Java 程序员 后端

五、redis配置信息以及常用命令,java语言程序设计基础篇第十一版pdf

Java 程序员 后端

三、Spring Cloud之软负载均衡 Ribbon,mysql架构

Java 程序员 后端

上线半天下载量破100W!阿里内部微服务进阶笔记,超详细

Java 程序员 后端

不是吧阿sir,你这Redis太熟了吧,震惊面试官第六年

Java 程序员 后端

上线半天下载量破100W!美团大佬的Java性能调优实战手册,超详细

Java 程序员 后端

二、docker 镜像容器常用操作(让我们用docker 溜得飞起)

Java 程序员 后端

五位阿里大牛联手撰写的《深入浅出Java多线程》

Java 程序员 后端

五分钟!搞懂 MySQL主从复制原理,还不会算我输

Java 程序员 后端

三面腾讯,已拿offer!分享复习经验和后台开发面经

Java 程序员 后端

三面蚂蚁金服终获 java高岗 offer,却直言再也不想体验第二次了

Java 程序员 后端

三面遭阿里新微服务框架暴锤,含恨吃透这份手抄本笔记,终入阿里(1)

Java 程序员 后端

三面遭阿里新微服务框架暴锤,含恨吃透这份手抄本笔记,终入阿里

Java 程序员 后端

云服务器下centos7,nginx面试题

Java 程序员 后端

【Flutter 专题】22 图解 PopupMenu 那些事儿

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 11月日更

三面阿里云斩获offer:微服务+Redis,积累总结

Java 程序员 后端

不到30岁开上兰博基尼的程序员,为什么这么强,他告诉我只需要把多线程搞好你也行

Java 程序员 后端

不是吧阿sir,你这多线程并发也太熟了吧,震惊面试官第四年

Java 程序员 后端

22款受欢迎的CI工具,你想要的都在这里!_文化 & 方法_RancherLabs_InfoQ精选文章