Book Image

The DevOps 2.4 Toolkit

By : Viktor Farcic
Book Image

The DevOps 2.4 Toolkit

By: Viktor Farcic

Overview of this book

Building on The DevOps 2.3 Toolkit: Kubernetes, Viktor Farcic brings his latest exploration of the Docker technology as he records his journey to continuously deploying applications with Jenkins into a Kubernetes cluster. The DevOps 2.4 Toolkit: Continuously Deploying Applications with Jenkins to a Kubernetes Cluster is the latest book in Viktor Farcic’s series that helps you build a full DevOps Toolkit. This book guides readers through the process of building, testing, and deploying applications through fully automated pipelines. Within this book, Viktor will cover a wide-range of emerging topics, including an exploration of continuous delivery and deployment in Kubernetes using Jenkins. It also shows readers how to perform continuous integration inside these clusters, and discusses the distribution of Kubernetes applications, as well as installing and setting up Jenkins. Work with Viktor and dive into the creation of self-adaptive and self-healing systems within Docker.
Table of Contents (12 chapters)
9
Now It Is Your Turn

Defining a Pod with the tools

Every application is different, and the tools we need for a continuous deployment pipeline vary from one case to another. For now, we'll focus on those we'll need for our go-demo-3 application.

Since the application is written in Go, we'll need golang image to download the dependencies and run the tests. We'll have to build Docker images, so we should probably add a docker container as well. Finally, we'll have to execute quite a few kubectl commands. For those of you using OpenShift, we'll need oc as well. All in all, we need a Pod with golang, docker, kubectl, and (for some of you) oc.

The go-demo-3 repository already contains a definition of a Pod with all those containers, so let's take a closer look at it.

 1  cat k8s/cd.yml

The output is as follows.

apiVersion: v1
kind: Pod
metadata:
  name: cd
  namespace...