Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

GoCD Infrastructure as Code

Build Status

a simple GoCD demo environment that completely provisions itself and adds build pipelines (as code), e.g. as a YAML config, via the REST API / an external tool (gomatic) / through an XML config file.

→ Blog: Self-contained GoCD Environment Using Docker-Compose

the versions

  • gomatic - a server and an agent container as they are out of the box + a gomatic script to provision the server
  • static_config - 2 different agents, server provisioned via a static config file copie into the container
  • provisioned_externally - 2 different agents, server provisioned externally via the API

summary of the provisioned version

the startup sequence:

  • the GoCD server starts
  • two different agents start
  • agents wait to connect to the server
  • the provisioner waits some, and adds the pipelines to the config
  • the server picks up the config and starts the builds

up and running

in static_config, run:

docker-compose up -d


  • see the console output of the containers
  • In case you mount folders instead of copying them, note, on some platforms Docker fails to mount local folders. In this case, use node-docker-share!

access the instance

  • http://[go-server-ip]:8153


docker-compose stop

or destroy via:

docker-compose down --remove-orphans