Kubernetes: Your First Project

Kubernetes: Your First Project

3h 35mIntermediate2025-07-28

Authors

Carlos Nunez

Carlos Nunez

Cloud and Software Consultant | Field Engineer at VMware

Course details

In this project-based course, cloud and software consultant Carlos Nunez guides you through helping a fictional company, Explore California, move their static website into containers through Kubernetes. Explore the core concepts of Kubernetes: containers, the scheduler, the API server, the controller manager, and kube-proxy. Then dive into the hands-on project as you containerize the Explore California website and use Make to automate starting the website with Docker. Learn how to use Helm, one of the world’s most popular packaging tools for Kubernetes, to author a “Helm chart” that deploys Explore California onto a local Kubernetes cluster provisioned with Kind. Finally, complete the project by deploying Explore California into AWS Elastic Kubernetes Service and AWS Elastic Container Registry. This course helps you learn and actively practice the skills you need to complete your first project in Kubernetes.

Learning objectives
Package applications as container images, using Docker and Podman.
Author manifests for provisioning web applications into Kubernetes.
Bundle these manifests into a distributable package with Helm.
Deploy Kubernetes clusters locally and into popular cloud providers with native tooling.
Secure web applications with Ingress and cert-manager.

Skills covered

KubernetesDevOps ToolsDevOpsOpen SourceDeep Dive (X:Y)

Concepts

Introduction

  • Your first project on Kubernetes
  • What you should know

Kubernetes at a Glance

  • Our application before Kubernetes
  • What is Kubernetes
  • Our application after Kubernetes

Setting Up Your Environment

  • Tools we'll be using
  • Preparing Windows machines
  • Installing Podman Desktop on macOS
  • Installing Podman Desktop on Windows
  • Installing kind
  • Installing Helm
  • Installing AWS CLI and Azure CLI
  • Installing AWS eksctl
  • Configuring AWS access
  • Configuring Azure access interactively
  • Configuring Azure access with a service principal

Containerizing Explore California

  • Let's containerize Explore California
  • Creating the Dockerfile
  • Building your image with Podman
  • Building your image with Docker Buildx
  • Testing your changes
  • Challenge - Changing the website's title
  • Solution - Changing the website's title

Running Explore California Locally within Kubernetes

  • Running your app locally within Kubernetes
  • Creating your kind cluster
  • Scaling Explore California with a deployment
  • Exposing Explore California with a service
  • Routing Explore California with an ingress
  • Installing NGINX ingress controller
  • Testing your changes
  • Adding HTTPS to your website with cert-manager
  • Challenge - Change the port number
  • Solution - Change the port number

Packaging Explore California with Helm

  • Why Helm
  • Initializing your chart
  • Templatizing the deployment
  • Testing your templates
  • Templatizing the service and ingress
  • Templatizing the cert-manager issuer
  • Deploying your Helm chart
  • Challenge - Explore California sale
  • Solution - Explore California sale

Deploying Explore California into AWS EKS

  • From kind to EKS - What's changing
  • Deploying your EKS cluster with eksctl
  • Logging into your EKS cluster
  • Installing NGINX ingress controller into EKS
  • Creating an ECR repository
  • Deploying the Explore California image into ECR
  • Deploying Explore California into EKS
  • Installing cert-manager into EKS
  • Cleaning up EKS

Deploying Explore California into Azure AKS

  • From kind to AKS - What's changing
  • Deploying your AKS cluster with the Azure CLI
  • Logging into your AKS cluster
  • Installing NGINX ingress controller into AKS
  • Creating an ACR repository
  • Deploying the Explore California image into ACR
  • Deploying Explore California into AKS
  • Installing cert-manager into AKS
  • Cleaning up AKS

Conclusion

  • Next steps
80,000 Toman