1.2 Install

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

There are many ways to deploy Concourse, depending on your personal preference. The Quick Start guide shows how to get Concourse up and running quickly via Docker Compose, and there is also an official Concourse Helm chart.

The documentation found here will primarily focus on the concourse CLI, which is the lowest common denominator, and can also be directly used if you want to just run Concourse yourself on real hardware or your own managed VMs.

The high-level steps to follow for installing Concourse are:

  1. Setup a Postgres database

  2. Generate Secrets for the web and worker nodes

  3. Install the web node

  4. Install the worker node

Table of contents:
  1. 1.2.1 Running a PostgreSQL node
    1. 1.2.1.1 Prerequisites
    2. 1.2.1.2 Running PostgreSQL
    3. 1.2.1.3 Resource utilization
  2. 1.2.2 The concourse CLI
  3. 1.2.3 Generating Keys
    1. 1.2.3.1 Generating the Keys
    2. 1.2.3.2 Multiple Worker Keys
  4. 1.2.4 Running a web node
    1. 1.2.4.1 Prerequisites
    2. 1.2.4.2 Running concourse web
      1. 1.2.4.2.1 Resource utilization
    3. 1.2.4.3 Operating a web node
      1. 1.2.4.3.1 Scaling
        1. 1.2.4.3.1.1 Database connection pooling
      2. 1.2.4.3.2 Reloading worker authorized key
      3. 1.2.4.3.3 Restarting & Upgrading
      4. 1.2.4.3.4 Downgrading
    4. 1.2.4.4 Configuring the web node
      1. 1.2.4.4.1 Giving your cluster a name
      2. 1.2.4.4.2 Configuring ingress traffic
      3. 1.2.4.4.3 TLS via Let's Encrypt
      4. 1.2.4.4.4 Build log retention
      5. 1.2.4.4.5 Enabling audit logs
      6. 1.2.4.4.6 Configuring defaults for resource types
  5. 1.2.5 Running a worker node
    1. 1.2.5.1 Prerequisites
    2. 1.2.5.2 Running concourse worker
      1. 1.2.5.2.1 Resource utilization
    3. 1.2.5.3 Operating a worker node
      1. 1.2.5.3.1 Scaling Workers
      2. 1.2.5.3.2 Worker Heartbeating & Stalling
      3. 1.2.5.3.3 Restarting a Worker
      4. 1.2.5.3.4 Gracefully Removing a Worker
    4. 1.2.5.4 Configuring the worker node
      1. 1.2.5.4.1 Tagging Workers
      2. 1.2.5.4.2 Team Workers
        1. 1.2.5.4.2.1 Tags and Team Workers
      3. 1.2.5.4.3 Healthcheck Endpoint
      4. 1.2.5.4.4 Resource Types
        1. 1.2.5.4.4.1 Bundled Resource Types
        2. 1.2.5.4.4.2 Installing or Upgrading Bundled Resource Types
      5. 1.2.5.4.5 Configuring Runtimes
        1. 1.2.5.4.5.1 containerd runtime
        2. 1.2.5.4.5.2 Transitioning from Guardian to containerd
        3. 1.2.5.4.5.3 Guardian runtime
        4. 1.2.5.4.5.4 Troubleshooting and fixing DNS resolution
          1. 1.2.5.4.5.4.1 Pointing to external DNS servers
          2. 1.2.5.4.5.4.2 Using a local DNS server
          3. 1.2.5.4.5.4.3 A note on allowing host access and DNS proxy
  6. 1.2.6 Upgrading Concourse
    1. 1.2.6.1 Upgrading the Web Node
    2. 1.2.6.2 Upgrading the Worker Node
      1. 1.2.6.2.1 Linux Workers
      2. 1.2.6.2.2 Darwin and Windows Workers