
Engage in a hands-on introduction to Kubernetes, learn what it is and why it matters, and set up a local cluster with a sample app using pods and deployment services.
Explore how Kubernetes, an open source platform for orchestrating containers, runs, scales, and manages containerized applications automatically across laptops, data centers, and clouds.
Set up a local Kubernetes cluster on macOS with Docker Desktop, enable Kubernetes in settings, and use kubectl to interact with a single-node cluster, with Linux deployment upcoming.
Learn how to install Minikube on Linux to run a local Kubernetes cluster using Docker as the driver, including kubectl setup and basic verification.
Verify kubectl is configured for the minikube cluster, explore basic commands (version, help, cluster info, get nodes, get pods), and preview using VS Code extensions to ease future work.
Install Visual Studio Code and Kubernetes extensions to connect remotely via SSH. Browse clusters and run kubectl from the command palette, edit yaml with the yaml extension, and explore minikube.
Explore how a Kubernetes cluster uses a control plane, nodes, and pods, where a pod wraps a container with networking and storage, demonstrated by creating an nginx pod with kubectl.
Learn how deployments in Kubernetes manage pods via replica sets, scale to the desired number of replicas, and perform safe updates and rollbacks using declarative infrastructure.
Expose the nginx deployment using a node port service to access it from outside the cluster, demonstrating cluster ip, node port, and load balancer concepts with scalable, balanced pods.
Learn how namespaces in Kubernetes organize resources by creating a dev namespace, deploying an nginx workload there, and managing environments with kubectl -n to avoid naming collisions.
Accelerate kubectl workflows by enabling autocomplete and bash completion across macOS, Linux, and Windows, using tab completion to quickly create deployments and scale pods while consulting Kubernetes documentation.
Explore declarative Kubernetes YAML, enabling reusable configurations via git. Create a pod example with nginx, learn YAML indentation and top fields apiVersion, kind, metadata, and spec, and kubectl apply -f.
Create a Kubernetes deployment YAML for an nginx deployment from documentation, apply it with kubectl apply -f, and verify status with kubectl get.
Expose the nginx app with a nodeport service to give stable access to pods. Create the service yaml, apply with kubectl, and test via minikube service and curl.
Scale a deployment with kubectl and a YAML file, increasing replicas from 3 to 5 and back, then apply a rolling update to nginx 1.27.5.
Learn how configmaps enable flexible configuration for apps and how secrets securely store passwords and API keys, attached to pods via environment variables or mounted volumes with YAML examples.
Explore how Kubernetes volumes provide persistent, shared storage for a multi-replica nginx deployment by mounting a local folder into Minikube and sharing an index.html across all pods.
Wrap up this hands-on introduction to Kubernetes by using two essential debugging commands, kubectl logs and kubectl describe, to diagnose pods, deployments, services, and volumes while reinforcing practical core concepts.
Welcome to Hands-On Introduction to Orchestration with Kubernetes. I'm Lucas, a tech lead working in an international team, and I’ve created this course to make Kubernetes understandable and practical - especially if you’re stepping into DevOps, backend development, or modern cloud infrastructure.
If you've already worked with Docker and wondered what comes next - how containers are managed at scale, how apps stay running, or how teams handle deployments and rollouts - this course is for you.
We'll start from the ground up by setting up our local Kubernetes cluster using Minikube, then we'll walk through core concepts step by step. You'll get hands-on with pods, deployments, services, ConfigMaps, Secrets, and persistent storage — all with quick examples.
What you can learn in this course:
What Kubernetes is and how it works
How to deploy and scale applications
How to expose your apps to the outside world
How to manage configurations, secrets, and storage
How to work with kubectl, YAML files, and namespaces
This course is fast, focused, and beginner-friendly - with no slides and unnecessary theory, everything is hands-on.
By the end, you'll understand how Kubernetes works and be confident using it in your projects or on the job.
Let’s demystify Kubernetes and get hands-on together!