Quick Start

Alternatively, if you'd just like to get a Concourse running and don't really care how, you can use docker-compose to run a quick-and-dirty Concourse cluster:

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

Concourse will be running at localhost:8080.

This instance is configured with a single user with the username and password as test. If you'd like to change these credentials you can edit the docker-compose.yml - check out Configuring Auth to learn how.

From here you can continue on to fly CLI to get started.

1.1 Install

A Concourse installation is composed of a web node, a worker node, and a PostgreSQL node.

The web and worker nodes both run via a single concourse CLI, which can be downloaded from the latest GitHub release - be sure to grab the appropriate archive for your platform of choice.

Each archive contains the following:

concourse/bin/gdn            # on Linux
concourse/resource-types/... # on Linux

When extracted, the concourse binary will auto-discover its sibling assets based on its file location, so you may extract it anywhere.

On Linux a typical install location is /usr/local/concourse:

tar -zxf concourse-*.tgz -C /usr/local

From there, you can either add /usr/local/concourse/bin to your $PATH, or just execute /usr/local/concourse/bin/concourse directly.

Configuration basics

All Concourse node configuration is defined statically via flags. For a full list of flags, you can pass --help to any command.

Each flag can also be set via an environment variable. The env var for each flag is based on the flag name, preceded with CONCOURSE_. These are also shown in --help.

Various sections in documentation may refer to configuration via env vars rather than flags, but they are both equivalent an interchangeable. Env vars are just easier to reference in isolation and are more useful to copy-paste.