Using AWS ECR as a Docker registry

In this post, I’ll modify the pipeline from the previous posts to use a Docker registry powered by AWS ECR (Amazon Elastic Container Registry).

Continue reading “Using AWS ECR as a Docker registry”

Advertisements

CD with Helm part 8: DTAP

In the series so far, we have build a CI pipeline that produces a Docker image and a Helm chart. They are linked together with a unique version, allowing us to use Helm to deploy any feature branch we want. Now we’ll see how to implement a traditional DTAP and use Helm to deploy whatever, wherever.

Continue reading “CD with Helm part 8: DTAP”

CD with Helm part 7: Docker registry

In a previous post, we had taken a shortcut: we had TeamCity running inside Kubernetes, sharing its Docker daemon. That trick allowed Kubernetes to access the Docker images produced by our builds. In this post, we’ll setup our own Docker registry and publish Docker images there.

Continue reading “CD with Helm part 7: Docker registry”

CD with Helm part 6: networking interlude

Before we continue with setting up the multiple environments that comprise our DTAP, I’d like to take a break and discuss a bit about networks. This way we can understand better what is going on inside and outside of Kubernetes.

Continue reading “CD with Helm part 6: networking interlude”

CD with Helm part 5: versioned artifacts

In the previous post we created the Helm chart for our hello world blog-helm application. The Helm chart contains all the information we need to deploy our application to a Kubernetes cluster. But so far, we always deploy the latest version. In a CD setup, we’d like to be able to deploy any version, from any feature branch, at any given point in time, to any environment (DTAP). Let’s start by looking at versioning.

Continue reading “CD with Helm part 5: versioned artifacts”

CD with Helm part 4: Helm Intro

In the previous post we had a first look at Kubernetes and deployed our hello world app on a local cluster using the CLI. The simple commands we used are good enough for a first taste. However, the full power of Kubernetes comes with using configuration files. Helm builds on top of that, taking these configuration files to the next level.

Continue reading “CD with Helm part 4: Helm Intro”

CD with Helm part 3: Kubernetes Intro

In the previous posts we took the first steps to dockerize our hello world application. This allows us to run the application on any host, as long as it runs Docker. We also dockerized the build plan, which allows us to use any build server, as long as it runs Docker. Now we’re ready to run the application on production. Where should we run it?

Continue reading “CD with Helm part 3: Kubernetes Intro”