公司介绍
Concourse CI 是由 Alex Suraci 和 Chris Brown 于 2014 年在 Pivotal(现 VMware)期间创建的容器优先 CI/CD 流水线工具。项目现已捐献给 CNCF(云原生计算基金会),成为其旗下的开源项目。
Concourse 以声明式 YAML 配置定义流水线,采用独特的**飞行计划(Flight Plan)**概念描述构建步骤。与传统的 CI 工具不同,Concourse 的每个步骤都在独立的容器中执行,天然隔离且可重复。其核心理念是「每个资源都是版本化的不可变对象」,所有输入输出通过资源系统(Resource)进行管理,确保流水线的纯函数式特性。
Concourse 在云原生社区中拥有广泛影响力,尤其受到 Kubernetes 和微服务架构团队的青睐。
核心产品
| 产品 | 说明 |
|---|---|
| Concourse CI | 核心 CI/CD 引擎,支持声明式 YAML 流水线定义和容器化执行 |
| Concourse Workers | 分布式工作节点,运行构建任务,支持弹性伸缩和资源池化管理 |
| Concourse Web UI | 现代化的 Web 界面,提供流水线可视化、实时构建日志和手动触发操作 |
| Concourse ATC | 流水线编排引擎(AgaTe Core),管理流水线调度、资源版本追踪和任务分发 |
| Concourse CLI (fly) | 官方命令行工具,支持流水线配置管理、日志查看、本地调试和交互式操作 |
| Concourse Helm Chart | 官方 Kubernetes Helm Chart,支持一键部署到 K8s 集群 |
发展历程
| 年份 | 事件 | 说明 |
|---|---|---|
| 2014 | Concourse 诞生 | Alex Suraci 和 Chris Brown 在 Pivotal 创建 Concourse CI |
| 2015 | 首次开源发布 | Concourse 在 GitHub 上正式开源,采用 Apache 2.0 许可证 |
| 2016 | 资源系统成熟 | 资源(Resource)机制完善,支持丰富的输入/输出类型和版本追踪 |
| 2018 | 加入 CNCF | Concourse 正式成为 CNCF 沙箱项目,社区治理更加规范 |
| 2019 | Helm Chart 发布 | 官方 Kubernetes Helm Chart 发布,大幅简化 K8s 部署流程 |
| 2020 | 成为 CNCF 孵化项目 | 项目成熟度提升,获得更广泛的社区和企业支持 |
| 2023+ | 持续演进 | 完善 OIDC 认证、Pipeline 模板和性能优化 |
市场地位与竞品
Concourse 在容器优先 CI/CD 领域独树一帜,其主要竞争者包括:
- Jenkins:全球最流行的开源 CI/CD 服务器,插件生态庞大
- GitLab CI/CD:与 GitLab 代码仓库深度集成的 CI/CD 引擎
- Buildkite:混合架构 CI/CD 平台,结合自托管代理与中央编排
- GoCD:ThoughtWorks 出品的开源 CI/CD,以价值流映射(VSM)见长
- Drone CI:基于容器的轻量级 CI/CD 引擎,YAML 配置,简洁高效
- GitHub Actions:GitHub 原生 CI/CD 工作流引擎,生态丰富
核心优势
容器优先:每个步骤在独立容器中运行,天然隔离、可重复、环境一致
声明式配置:纯 YAML 定义流水线,版本可控,易于审核和复用
飞行计划(Flight Plan):独特的步骤编排模型,支持并行、串行和条件执行
资源系统:所有输入输出为版本化不可变资源,确保流水线幂等性和可追溯性
云原生:原生支持 Kubernetes 部署,与 CNCF 生态深度整合
开源中立:CNCF 项目,厂商中立,社区驱动治理
简约设计:无插件体系,核心功能开箱即用,减少维护复杂度