Concourse

Concourse 是一个用 Go 和 Elm 编写的基于容器的持续集成专家。(Concourse is a container-based continuous thing-doer written in Go and Elm.)

Github星跟蹤圖

Concourse: the continuous thing-doer(大厅:持续集成专家)

Concourse 是一个用 Go 编写的自动化系统。 它最常用于 CI/CD,可以扩展到任何类型的自动化管道,从简单到复杂。

Concourse 对一些事情非常自以为是:幂等性,不变性,声明性配置,无状态工作者和可重现的构建。

安装

Concourse 是作为单个 concourse 二进制文件分发的,可在“下载”页面上获得。

如果您想仔细了解,请跳到快速启动

除了 concourse 二进制文件之外,还有一些其他支持的格式。 有关更多信息,请参阅他们的 GitHub 存储库:

快速启动

Concourse 将在 127.0.0.1:8080 运行。 您可以使用 test/test 作为用户名/密码登录。

接下来,通过从 Web UI 下载并安装 fly 作为测试用户来定位您当地的Concourse:

$ fly -t ci login -c http://127.0.0.1:8080 -u test -p test
logging in to team 'main'

target saved

配置管道

没有用于配置 Concourse 的 GUI。 而是将管道配置为声明性 YAML 文件:

resources:
- name: booklit
  type: git
  source: {uri: "https://github.com/vito/booklit"}

jobs:
- name: unit
  plan:
  - get: booklit
    trigger: true
  - task: test
    file: booklit/ci/test.yml

大多数操作都是通过随附的 fly CLI 完成的。 如果您已安装 Concourse,请尝试将上述示例保存为 booklit.yml,定位您的 Concourse 实例,然后运行:

fly -t $target set-pipeline -p booklit -c booklit.yml

这些管道文件是自包含的,最大化了从一个 Concourse 实例到下一个 Concourse 实例的可移植性。

学到更多

主要指標

概覽
名稱與所有者concourse/concourse
主編程語言Go
編程語言Makefile (語言數: 13)
平台Docker, Linux, Mac, Windows
許可證Apache License 2.0
所有者活动
創建於2014-04-19 20:45:45
推送於2025-06-10 16:12:21
最后一次提交2025-06-10 11:58:08
發布數382
最新版本名稱v7.13.2 (發布於 )
第一版名稱v0.1.0-rc.1 (發布於 )
用户参与
星數7.6k
關注者數147
派生數859
提交數27.2k
已啟用問題?
問題數5011
打開的問題數94
拉請求數2742
打開的拉請求數30
關閉的拉請求數489
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?

Concourse: the continuous thing-doer.

Concourse is an automation system written in Go. It is most commonly used for
CI/CD, and is built to scale to any kind of automation pipeline, from simple to
complex.

booklit pipeline

Concourse is very opinionated about a few things: idempotency, immutability,
declarative config, stateless workers, and reproducible builds.

Installation

Concourse is distributed as a single concourse binary, available on the Releases page.

If you want to just kick the tires, jump ahead to the Quick Start.

In addition to the concourse binary, there are a few other supported formats.
Consult their GitHub repos for more information:

Quick Start

$ wget https://concourse-ci.org/docker-compose.yml
$ docker-compose up
Creating docs_concourse-db_1 ... done
Creating docs_concourse_1    ... done

Concourse will be running at 127.0.0.1:8080. You can
log in with the username/password as test/test.

Next, install fly by downloading it from the web UI and target your local
Concourse as the test user:

$ fly -t ci login -c http://127.0.0.1:8080 -u test -p test
logging in to team 'main'

target saved

Configuring a Pipeline

There is no GUI for configuring Concourse. Instead, pipelines are configured as
declarative YAML files:

resources:
- name: booklit
  type: git
  source: {uri: "https://github.com/vito/booklit"}

jobs:
- name: unit
  plan:
  - get: booklit
    trigger: true
  - task: test
    file: booklit/ci/test.yml

Most operations are done via the accompanying fly CLI. If you've got Concourse
installed, try saving the above example
as booklit.yml, target your Concourse
instance
, and then run:

fly -t $target set-pipeline -p booklit -c booklit.yml

These pipeline files are self-contained, maximizing portability from one
Concourse instance to the next.

Learn More

Contributing

Our user base is basically everyone that develops software (and wants it to
work).

It's a lot of work, and we need your help! If you're interested, check out our
contributing docs.