#96concourse/concourse: Concourse 是一个用 Go 编写的基于容器的自动化系统。它最常用于 CI/CD,并且可以扩展到从简单到复杂的任何类型的自动化管道。
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.
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 -d
Creating docs_concourse-db_1 ... done
Creating docs_concourse_1 ... doneConcourse will be running at localhost:8080. You can
log in with the username/password as test/test.
⚠️ If you are using an M-series mac, note that they are
incompatible with thecontainerdruntime until
#9182 is resolved.
After downloading the docker-compose file, change:
CONCOURSE_WORKER_RUNTIME: "containerd"to
CONCOURSE_WORKER_RUNTIME: "houdini".
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://localhost:8080 -u test -p test
logging in to team 'main'
target savedYou can follow our Getting Started Tutorial
to learn how to write Concourse pipelines.
Configuring a Pipeline
Concourse has no GUI for configuration. Instead, pipelines are defined in
declarative YAML files:
resources:
- name: booklit
type: git
source: {uri: "https://github.com/concourse/booklit"}
jobs:
- name: unit
plan:
- get: booklit
trigger: true
- task: test
file: booklit/ci/test.ymlMost 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 ci set-pipeline -p booklit -c booklit.ymlThese pipeline files are self-contained, making them easily portable between
Concourse instances.
Learn More
- The Official Site for documentation,
reference material, and example pipelines. - The Getting Started Tutorial
to learn the basics of pipelines - See Concourse in action with our own pipelines
- Hang around in the GitHub discussions or in
Discord - See what we're working on the project board.
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.

