Day 2: What Are Pods in Kubernetes? And Why Doesn’t It Just Run Containers?
Let’s Start With What You Might Know
In the Day 1 blog, we introduced containers as a way to package apps with everything they need to run anywhere.
And you may have heard that Kubernetes manages containers.
So naturally, you might think…
Well… yes, but not directly. Kubernetes doesn’t manage containers one by one. Instead, it wraps them in something called a Pod.
Let’s understand why.
First, What Is a Pod?
A Pod is the smallest deployable unit in Kubernetes. It’s like a tiny box that holds one or more containers, along with some shared resources.
You can think of a Pod as:
- A wrapper around your container(s)
- With some shared memory/network
- That Kubernetes can create, manage, and scale easily
✅ Great question. Here’s why Kubernetes uses Pods:
1️⃣ Sometimes You Need Multiple Containers to Work Together
Imagine this:
- Your app runs in one container
- A helper container logs everything your app does
You want them to:
- Share the same IP
- Access the same files
- Be deployed together, live together, die together
💡 That’s exactly what a Pod does — it lets multiple containers work like a single unit.
2️⃣ Pods Give Kubernetes More Control
With Pods, Kubernetes can:
- Restart just the Pod if something crashes
- Attach configurations (like Secrets and ConfigMaps) more easily
- Monitor and scale apps in units that make sense
3️⃣ Separation of Concerns = Better Design
Kubernetes focuses on Pods, and inside those Pods, you define how containers work.
It’s a clean way to separate concerns:
- Kubernetes: "I’ll manage Pods"
- You: "I’ll decide what goes inside them"
Real-World Analogy: Understanding a Pod
Think of a Pod like a room in an apartment:
- The room = Pod
- Roommates = Containers who share the same kitchen, Wi-Fi, and AC
- They can talk to each other easily and live/die together
- Each room has its own address (IP), and Kubernetes knows which room is which
How Pods Work in Practice
When you deploy an app on Kubernetes:
- You create a Deployment
- That Deployment manages ReplicaSets
- ReplicaSets spin up Pods
- And Pods run your container(s)
You’ll hear this a lot in DevOps interviews:
✅ Now you know why.
Quick Summary
- A Pod is a wrapper around one or more containers
- Pods are the smallest unit Kubernetes deploys, manages, and scales
- Multiple containers in a Pod share storage, network, and lifecycle
- Kubernetes uses Pods to organize, monitor, and control apps more effectively
Try It Yourself (Optional but Awesome)
You can launch your first Pod right now using the KodeKloud Kubernetes Playground — no setup needed!
Just run:
kubectl run myapp --image=nginx
kubectl get pods
This will spin up your very first Kubernetes Pod!

Don’t Miss Next Lesson
📅 Day 3: Understanding Nodes, Clusters & the Kubernetes Control Plane
We’ll break down how your Pods actually run on physical or virtual machines and who’s in charge of managing them.
📬 Follow us on LinkedIn and Twitter to get notified as we release each day’s blog.
📺 Subscribe to KodeKloud on YouTube — where beginners become Kubernetes-ready.