AppsCI / CDConcourse

Concourse

Concourse is a CI tool that treats pipelines as first class objects and containerizes every step along the way.

Directory Structure

    • .env
    • docker-compose.yml

docker-compose.yml

version: '3'
 
services:
  db:
    image: postgres
    environment:
      POSTGRES_DB: concourse
      POSTGRES_USER: concourse_user
      POSTGRES_PASSWORD: concourse_pass
    logging:
      driver: "json-file"
      options:
        max-file: "5"
        max-size: "10m"
 
  web:
    image: concourse/concourse
    command: web
    links: [db]
    depends_on: [db]
    ports: ["8080:8080"]
    volumes: ["./keys/web:/concourse-keys"]
    environment:
      CONCOURSE_EXTERNAL_URL: http://localhost:8080
      CONCOURSE_POSTGRES_HOST: db
      CONCOURSE_POSTGRES_USER: concourse_user
      CONCOURSE_POSTGRES_PASSWORD: concourse_pass
      CONCOURSE_POSTGRES_DATABASE: concourse
      CONCOURSE_ADD_LOCAL_USER: test:test
      CONCOURSE_MAIN_TEAM_LOCAL_USER: test
    logging:
      driver: "json-file"
      options:
        max-file: "5"
        max-size: "10m"
 
  worker:
    image: concourse/concourse
    command: worker
    privileged: true
    depends_on: [web]
    volumes: ["./keys/worker:/concourse-keys"]
    links: [web]
    stop_signal: SIGUSR2
    environment:
      CONCOURSE_TSA_HOST: web:2222
      # enable DNS proxy to support Docker's 127.x.x.x DNS server
      CONCOURSE_GARDEN_DNS_PROXY_ENABLE: "true"
    logging:
      driver: "json-file"
      options:
        max-file: "5"
        max-size: "10m"

Resources

Website: https://concourse-ci.org/

GitHub: https://github.com/concourse/concourse

Docker Hub: https://hub.docker.com/r/concourse/concourse

Configuration: https://github.com/concourse/concourse-docker