This Docker image simply packages up the official concourse
binary and
configures it as the ENTRYPOINT
, with a bunch of sane defaults for Docker.
Configuration is done via CONCOURSE_*
environment variables. To discover
them, run --help
:
docker run -t concourse/concourse --help
docker run -t concourse/concourse web --help
docker run -t concourse/concourse worker --help
Concourse worker can be run with multiple container runtimes:
While adding the CONCOURSE_*
environment variables for worker in docker-compose.yml
, please be mindful to configure the desired container runtime appropriately.
See the Concourse install docs for more
information on deploying and managing Concourse - the Docker repository just
wraps the concourse
binary, so the documentation covers it too.
The docker-compose.yml
in this repo will get you up and running with the
latest version Concourse. To use it you'll first need to execute
./keys/generate
- this will generate credentials used to authorize the
Concourse components with each-other:
$ ./keys/generate
wrote private key to /keys/session_signing_key
wrote private key to /keys/tsa_host_key
wrote ssh public key to /keys/tsa_host_key.pub
wrote private key to /keys/worker_key
wrote ssh public key to /keys/worker_key.pub
Next, run docker-compose up -d
to start Concourse in the background:
$ docker-compose up -d
Starting concourse-docker_db_1 ... done
Starting concourse-docker_web_1 ... done
Starting concourse-docker_worker_1 ... done
The default configuration sets up a test
user with test
as their password
and grants them access to main
team. To use this in production you'll
definitely want to change that - see Auth &
Teams for more information..
If things seem to be going wrong, check the logs for any errors:
$ docker-compose logs -f
Attaching to concourse-docker_worker_1, concourse-docker_web_1, concourse-docker_db_1
...
Concourse components can also be run with regular old docker run
commands.
Please use docker-compose.yml
as the canonical reference for the necessary
flags/vars and connections between components. Further documentation on
configuring Concourse is available in the Concourse Install
docs.
The Dockerfile
in this repo is built as part of our CI process - as such, it
depends on having a pre-built linux-rc
available in the working directory, and
ends up being published as concourse/concourse
.