---
title: GoCD with JHipster
description: "A colleague recently introduced me to GoCD [https://www.gocd.org/] and explained\nsome of its benefits and why they prefer it for Continuous Delivery in their\norganization. I've used a number of popular CI/CD products and wanted to give it\na try. My colleague presented GoCD as a"
image: https://blog.ippon.tech/hubfs/Imported_Blog_Media/Screen-Shot-2017-11-15-at-9_37_07-AM-3.png
---

[Skip to main content](https://blog.ippon.tech/gocd-with-jhipster#main)

[![IpponLogoKleinBlue](https://blog.ippon.tech/hs-fs/hubfs/IpponLogoKleinBlue.png?width=219&height=64&name=IpponLogoKleinBlue.png) ![IpponLogoKleinBlue](https://blog.ippon.tech/hs-fs/hubfs/IpponLogoKleinBlue.png?width=219&height=64&name=IpponLogoKleinBlue.png) ![IpponLogoKleinBlue](https://blog.ippon.tech/hs-fs/hubfs/IpponLogoKleinBlue.png?width=168&height=49&name=IpponLogoKleinBlue.png) ![IpponLogoKleinBlue](https://blog.ippon.tech/hs-fs/hubfs/IpponLogoKleinBlue.png?width=168&height=49&name=IpponLogoKleinBlue.png)](https://ipponusa.com/)

- [Home](https://ipponusa.com)
- [Show submenu for About About](https://ipponusa.com/about-us) 
    - [Who We Are](https://ipponusa.com/who-we-are)
    - [Careers](https://ipponusa.com/careers)
    - [Show submenu for Our Partners Our Partners](https://ipponusa.com/our-partners/) 
          - [AWS](https://ipponusa.com/our-partners/aws/)
          - [Snowflake](https://ipponusa.com/our-partners/snowflake/)
          - [Databricks](https://ipponusa.com/our-partners/databricks/)
          - [Microsoft](https://ipponusa.com/our-partners/microsoft/)
- [Show submenu for Services Services](https://ipponusa.com/services) 
    - [Snowflake](https://ipponusa.com/service/snowflake-concierge/)
    - [Artificial Intelligence](https://ipponusa.com/service/artificial-intelligence/)
    - [Data & Analytics](https://ipponusa.com/service/data-analytics/)
    - [Cloud Strategy](https://ipponusa.com/service/cloud-strategy/)
    - [Platform Modernization](https://ipponusa.com/service/platform-moderization/)
    - [Product Innovation](https://ipponusa.com/service/product-innovation/)
    - [Operating Model](https://ipponusa.com/service/operating-model/)
- [Blogs](https://blog.ippon.tech/)
- [Success Stories](https://ipponusa.com/success-stories/)
- [Show submenu for Resources Resources](https://ipponusa.com/resources/) 
    - [eBooks](https://ipponusa.com/ebooks/)
    - [The Data Pour](https://info.ippon.tech/the-data-pour)
    - [Videos & Webinars](https://info.ippon.tech/videos-and-webinars)
    - [Media Center](https://ipponusa.com/media-center/)

Search

Open main navigation

Close main navigation

- [Home](https://ipponusa.com)
- Show submenu for About About 
  
    - About
    - [About](https://ipponusa.com/about-us)
    - [Who We Are](https://ipponusa.com/who-we-are)
    - [Careers](https://ipponusa.com/careers)
    - Show submenu for Our Partners Our Partners 
      
          - Our Partners
          - [Our Partners](https://ipponusa.com/our-partners/)
          - [AWS](https://ipponusa.com/our-partners/aws/)
          - [Snowflake](https://ipponusa.com/our-partners/snowflake/)
          - [Databricks](https://ipponusa.com/our-partners/databricks/)
          - [Microsoft](https://ipponusa.com/our-partners/microsoft/)
- Show submenu for Services Services 
  
    - Services
    - [Services](https://ipponusa.com/services)
    - [Snowflake](https://ipponusa.com/service/snowflake-concierge/)
    - [Artificial Intelligence](https://ipponusa.com/service/artificial-intelligence/)
    - [Data & Analytics](https://ipponusa.com/service/data-analytics/)
    - [Cloud Strategy](https://ipponusa.com/service/cloud-strategy/)
    - [Platform Modernization](https://ipponusa.com/service/platform-moderization/)
    - [Product Innovation](https://ipponusa.com/service/product-innovation/)
    - [Operating Model](https://ipponusa.com/service/operating-model/)
- [Blogs](https://blog.ippon.tech/)
- [Success Stories](https://ipponusa.com/success-stories/)
- Show submenu for Resources Resources 
  
    - Resources
    - [Resources](https://ipponusa.com/resources/)
    - [eBooks](https://ipponusa.com/ebooks/)
    - [The Data Pour](https://info.ippon.tech/the-data-pour)
    - [Videos & Webinars](https://info.ippon.tech/videos-and-webinars)
    - [Media Center](https://ipponusa.com/media-center/)
- Search
- [Contact Us](https://ipponusa.com/contact/)

[Contact Us](https://ipponusa.com/contact/)

# GoCD with JHipster

![Aaron Throckmorton](https://app.hubspot.com/settings/avatar/d41d8cd98f00b204e9800998ecf8427e)

 by [Aaron Throckmorton](https://blog.ippon.tech/author/aaron-throckmorton)

January 8, 2018

![GoCD with JHipster](https://blog.ippon.tech/hubfs/Imported_Blog_Media/Screen-Shot-2017-11-15-at-9_37_07-AM-3.png)

[Docker](https://blog.ippon.tech/tag/docker/) [JHipster](https://blog.ippon.tech/tag/jhipster/) [DevOps](https://blog.ippon.tech/tag/devops/)

 

 Jan 08, 2018

 

A colleague recently introduced me to [GoCD](https://www.gocd.org/?ref=blog.ippon.tech) and explained some of its benefits and why they prefer it for Continuous Delivery in their organization. I've used a number of popular CI/CD products and wanted to give it a try. My colleague presented GoCD as a strong contender when seeking Continuous Delivery and Pipelines for development software development. I will present a shallow dive into this automation software while using a [JHipster](http://www.jhipster.tech/?ref=blog.ippon.tech) application as my artifact.

# Terminology

GoCD has some typical abstractions for an automation server with extra cool stuff thrown in.

*Resources* - Tagging. For this demonstration, I've tagged my agents with "Java" and "Docker".

*Environments* - Isolation for pipelines and agents. Objects in one environment cannot be used in another.

*Task* - Smallest pipeline unit. A single command to be run, like a shell command.

*Job* - Multiple tasks to be run together.

*Stage* - Collection of jobs that can be run in parallel.

*Pipeline* - Multiple stages that deliver your artifact. The first-class object of GoCD!

*Material* - Something that drives a pipeline. Very powerful and interesting feature of GoCD. Pipelines can be material for other pipelines. Stages can be material for multiple pipelines which offers more options for parallelism.

*Value Stream Map* - The visual representation of the CI/CD workflow. Another powerful feature that allows a top-down view of multiple pipelines running and consuming each other as material.

# Building The Infrastructure

For my test-drive of GoCD, I used Docker, Nexus, and the JHipster stack. Docker is a no-brainer for testing out new software. An artifact repository felt necessary and comfortable for my pipeline so I chose Nexus 3 for its capabilities as both a Java artifact repository and a Docker registry.

Grabbing images from [GoCD's official Docker images](https://github.com/gocd/docker-gocd-server?ref=blog.ippon.tech), I quickly got set-up.

## Containers

![Docker Containers](https://blog.ippon.tech/hubfs/Imported_Blog_Media/Screen-Shot-2017-11-10-at-12_30_47-PM-2.png)

So that these containers could communicate with each other, I added them to the bridge network and used IP address instead of service discovery.

For Nexus set up, I created Docker repositories. One was used as a private registry and another was created to proxy all of the images from Docker Hub.

Maven was used to build the Java artifact and the Docker image with [Spotify's Dockerfile-Maven plugin](https://github.com/spotify/dockerfile-maven?ref=blog.ippon.tech).

To add more cool factor to my pipeline, I created one of my agent's with:

`-v /var/run/docker.sock:/var/run/docker.sock`

This shares my host machine Docker socket with the container. After installing the Docker client inside the container, it can use this connection to manage Docker on the host. It was used to stop, destroy, and create JHipster app containers during my testing. I really like using this trick to simulate a Continuous Delivery Pipeline as it made artifact delivery super smooth. This isn't secure so I don't recommend trying this on prod.

## Infra

![](https://blog.ippon.tech/hubfs/Imported_Blog_Media/Screen-Shot-2017-11-15-at-9_18_50-AM-2.png)

# The Pipeline

Mapping out the steps before jumping into the GoCD server:

- Test the Java code
- Create the Java artifact
- Create the Docker image
- Tag the Docker image
- Push the Docker image to Nexus
- Destroy running JHipster container on host machine (if it exists)
- Deploy new JHipster container to host machine

After some tinkering on the GoCD server, I created a JHipster environment, an Ippon pipeline group, and added my pipeline to them. I also added another pipeline for checking the Docker socket functionality.

## My Pipelines

![You may notice that I ran these pipelines quite a lot](https://blog.ippon.tech/hubfs/Imported_Blog_Media/Screen-Shot-2017-11-10-at-1_51_52-PM-2.png)

Creating a new pipeline requires a name, group, material, initial stage, job, and task. From there it was just plugging in the rest of my tasks.

When I began building the pipeline tasks, I really appreciated the command lookup tool.

## Lookup Commands

![](https://blog.ippon.tech/hubfs/Imported_Blog_Media/Screen-Shot-2017-11-14-at-8_59_45-PM-2.png)

## Completed Tasks

![](https://blog.ippon.tech/hubfs/Imported_Blog_Media/Screen-Shot-2017-11-14-at-9_11_35-PM-2.png)

When building out my pipeline I initially had a bunch of failures related to my Docker configuration. Fixing these required many reruns of the job and subsequent failures. While that was frustrating, it was cool seeing the graph that GoCD creates to visualize stage duration and success.

## Stage Graph

![](https://blog.ippon.tech/hubfs/Imported_Blog_Media/Screen-Shot-2017-11-14-at-9_21_19-PM-2.png)

Despite these setbacks, my pipeline was quickly successful and JHipster was delivered happily to his ephemeral home in a Docker container.

# Conclusions

This automation tool seems very powerful and perfect for those seeking a lot of parallelism in their pipelines but I was unable to tap this potential. My tasks were able to fit inside a single job, inside a single stage. UI navigation was a little convoluted, as I had to drill down into the pipeline, stage, and job to edit my tasks.

The console logging was very intermittent and slow compared to other automation servers. This was complicated by what I felt was a lack of visual representation for my pipeline.

## Value Stream Map

![](https://blog.ippon.tech/hubfs/Imported_Blog_Media/Screen-Shot-2017-11-14-at-10_08_42-PM-2.png)

Above is the Value Stream Map for my pipeline while running. This doesn't convey enough information for my tastes. The VSM is great for displaying large, interconnected pipelines and materials but suffers when tasked to represent single pipelines.

I've built many pipelines but few so complex that I felt GoCD would have been my first choice for implementing them. When approaching CI/CD I think it is best to look for the right tool for the job. GoCD is still a strong contender if your job is highly complex and full of opportunities to utilize its first-class support for parallelism.

## Related Articles

##### [![AWS DevOps Agent and the Future of Cloud Operations](https://blog.ippon.tech/hs-fs/hubfs/Ippon-Feb-03-2026-07-05-29-4408-PM.png?width=520&height=294&name=Ippon-Feb-03-2026-07-05-29-4408-PM.png) DevOps • February 25, 2026 AWS DevOps Agent and the Future of Cloud Operations 3 min read](https://blog.ippon.tech/aws-devops-agent-and-the-future-of-cloud-operations)

##### [![How CBA Is Using Agentic AI to re:invent Legacy Modernization](https://blog.ippon.tech/hs-fs/hubfs/Ippon%20(2).png?width=520&height=294&name=Ippon%20(2).png) DevOps • February 19, 2026 How CBA Is Using Agentic AI to re:invent Legacy Modernization 4 min read](https://blog.ippon.tech/how-cba-is-using-agentic-ai-to-reinvent-legacy-modernization)

##### [![We Knew How to Failover, But We Didn’t Know When to Failover](https://blog.ippon.tech/hs-fs/hubfs/Ippon%20copy.jpg?width=520&height=294&name=Ippon%20copy.jpg) DevOps • December 9, 2025 We Knew How to Failover, But We Didn’t Know When to Failover 3 min read](https://blog.ippon.tech/we-knew-how-to-failover-but-we-didnt-know-when-to-failover)

### Comments

### Subscribe to Our Blog!

Stay informed with the latest insights and updates by signing up for our weekly blog newsletter – delivered straight to your inbox!

[Back to blog homepage »](https://blog.ippon.tech/)

![IpponLogoKleinBlue](https://blog.ippon.tech/hs-fs/hubfs/IpponLogoKleinBlue.png?width=247&height=73&name=IpponLogoKleinBlue.png "IpponLogoKleinBlue")

Ippon is a consulting and expertise firm, who is convinced that technology is a source of progress for society. We help our clients leverage their digital assets to design an appropriate strategy and deploy their transformation roadmap at scale.

#### Navigation

- [Home](https://ipponusa.com/)
- [About](https://ipponusa.com/about-us/)
- [Services](https://ipponusa.com/services/)
- [Blogs](https://blog.ippon.tech/?__hstc=223043268.1036d82247623b329dfefe4e92697801.1714729179243.1714729179243.1714729179243.1&__hssc=223043268.2.1714729179244&__hsfp=803678701)
- [eBooks](https://ipponusa.com/ebooks/)
- [The Data Pour](https://info.ippon.tech/the-data-pour?__hstc=223043268.1036d82247623b329dfefe4e92697801.1714729179243.1714729179243.1714729179243.1&__hssc=223043268.2.1714729179244&__hsfp=803678701)

[Contact Us](https://ipponusa.com/contact/)

[Join Us](https://ipponusa.com/careers/)

#### Services

- [Data & Analytics](https://ipponusa.com/service/data-analytics/)
- [Cloud Strategy](https://ipponusa.com/service/cloud-strategy/)
- [Artificial Intelligence](https://ipponusa.com/service/artificial-intelligence/)
- [Operating Model](https://ipponusa.com/service/operating-model/)
- [Platform Modernization](https://ipponusa.com/service/platform-moderization/)
- [Product Innovation](https://ipponusa.com/service/product-innovation/)

#### Ippon International

- [France](https://fr.ippon.tech/?__hstc=223043268.1036d82247623b329dfefe4e92697801.1714729179243.1714729179243.1714729179243.1&__hssc=223043268.2.1714729179244&__hsfp=803678701)
- [Australia](https://au.ippon.tech/?__hstc=223043268.1036d82247623b329dfefe4e92697801.1714729179243.1714729179243.1714729179243.1&__hssc=223043268.2.1714729179244&__hsfp=803678701)

- #### Contact
- Ippon Technologies  
  [3431 West Leigh Street Richmond, VA 23230, USA](https://maps.app.goo.gl/RySm6SAwZnsxeiLz9)
- [(844) 477- 6687](tel:8444776687)
- [Sales@ipponusa.com](mailto:Sales@ipponusa.com)

<https://www.facebook.com/IpponUSA/> <https://www.youtube.com/c/ipponusa> <https://www.linkedin.com/company/ippon-technology>

©Copyright 2024 Ippon USA. All Rights Reserved.   |   [Terms and Conditions](https://ipponusa.com/privacy-policy/)   |   [Privacy Policy](https://ipponusa.com/privacy-policy/)   |   [Website by Skol Marketing](https://skolmarketing.com/)

```json
{
  "@context" : "https://schema.org",
  "@type" : "BlogPosting",
  "author" : {
    "@type" : "Person",
    "name" : "Aaron Throckmorton",
    "url" : "https://blog.ippon.tech/author/aaron-throckmorton"
  },
  "dateModified" : "2024-01-29T16:20:50.969Z",
  "datePublished" : "2018-01-08T16:20:00.000Z",
  "headline" : "GoCD with JHipster",
  "image" : [ "https://blog.ippon.tech/hubfs/Imported_Blog_Media/Screen-Shot-2017-11-15-at-9_37_07-AM-3.png" ],
  "mainEntityOfPage" : {
    "@id" : "https://blog.ippon.tech/gocd-with-jhipster",
    "@type" : "WebPage"
  },
  "publisher" : {
    "@type" : "Organization",
    "logo" : {
      "@type" : "ImageObject",
      "url" : "https://blog.ippon.tech/hubfs/logo_SVG.svg"
    },
    "name" : "Ippon Technologies"
  }
}
```