📅  最后修改于: 2021-01-04 03:06:18             🧑  作者: Mango
Jenkins和Circle CI用作持续集成(CI)工具,允许开发人员在开发过程中集成代码分支,并对它们运行一系列自动化测试。它们都将耗时的手动构建,测试和部署软件任务转换为快速,自动化的过程。
在将Travis CI与Jenkins进行比较时,我们需要考虑我们的业务需求和预算。
Jenkins是使用Java编程语言编写的最受欢迎的开源自动化服务器。它促进了软件开发过程中持续集成和持续交付(CI / CD)的自动化过程。
Jenkins支持1400多种其他软件工具的插件。这些插件将Jenkins扩展到了五年。平台,UI,管理,源代码管理和构建管理。
Jenkins易于安装和使用。它提供了一个令人印象深刻的浏览器托管的项目管理仪表板。
Circle CI是基于云的工具,可自动执行集成和部署过程。它提供了容易的设置和维护,没有任何困难。 Circle CI是一个基于云的系统,这意味着不需要专用服务器,也不需要维护甚至具有企业帐户免费计划的服务器。它可以与GitHub,Amazon EC2,dotCloud,Appfog等集成,并被Spotify,Facebook,RedBull,Harvest和Teespring等许多公司使用。
Circle CI还专注于使用多种方法(例如单元测试,集成测试和功能测试)在部署代码之前对其进行测试。该工具支持容器,Linux,OSX,并且可以在私有云或您自己的数据中心内运行。
Circle CI具有以下功能:
以下是詹金斯和Circle CI之间的主要比较:
Jenkins | Circle CI |
---|---|
In Jenkins, Builds are configured by Jenkins UI, and all settings of the jobs are stored on the Jenkins file system in Jenkins server which makes it hard to share configuration details with team or organization. By cloning Github or other source repositories can’t copy information stored in Jenkins. | In CircleCI, we can construct all jobs within a single file called “circle.yaml”. It is easy as CI configuration will be like any other source code repositories, which make it easy to share and backup. On CircleCI, only a small number of settings like secrets will be stored in an encrypted format. |
In Jenkins, teams need to maintain the Jenkins server by installing all dependencies and debug if any issues are there. | In Circle CI, we don’t need to maintain the server as every job will be started in a new environment where all the dependencies will be installed by default. |
In Jenkins, debugging will be a little bit difficult. | In Circle CI, developers can debug easily using it’s ssh feature. |
The web UI of Jenkins is slow or less responsive due to more number of plugins. | The Web UI of Circle CI is frequently changing with improvements which make it popular among users. |
In Jenkins, we don’t have built-in support for Docker workflow, the user needs to install and make it available in the built environment. | In Circle CI, we have built-in support for Docker in workflow, which can be accessed by adding in services section in circle.yaml file. |
Jenkins can support multiple jobs by multi-threading. | Circle CI has in-built support for parallelism, which can be achieved by project settings. |
Jenkins environment will change only when the user instructs. | Circle CI changes environment without warning, which is an issue. |
In Jenkins, secrets will be encrypted using Jenkins credentials and plugins. | In Circle CI, we don’t have security like Jenkins. |