Deploying a Demo Pod on Kubernetes using Minikube

Kubernetes is a powerful container orchestration platform that simplifies deploying, scaling, and managing containerized applications.

In this blog, we will walk through deploying a simple pod on Kubernetes using Minikube.

Prerequisites

Before we get started, ensure you have the following installed on your system:

Step 1: Start Minikube

Once Minikube is installed, start the Minikube cluster using the following command:

minikube start

This command initializes a local Kubernetes cluster. To verify that Minikube is running, execute:

minikube status

Step 2: Create a Sample Pod Manifest

A Pod in Kubernetes is the smallest deployable unit that encapsulates one or more containers. Let’s create a simple pod configuration file named nginx.yaml

apiVersion: v1
kind: Pod
metadata:
  name: nginx
  labels:
    app: nginx
spec:
  containers:
  - name: nginx
    image: nginx:latest
    ports:
    - containerPort: 80

This manifest defines a pod named nginx running an Nginx container.

Step 3: Deploy the Pod

To deploy the pod, use the kubectl apply command:

kubectl apply -f nginx.yaml

Verify the pod is running with:

kubectl get pods

You should see an output similar to:

NAME         READY   STATUS    RESTARTS   AGE
nginx   1/1     Running   0          10s

Step 4: Access the Nginx Pod

Since this is a standalone pod, we need to expose it for external access. Use kubectl port-forward to access the container locally:

kubectl port-forward pod/nginx 8080:80

Now, open your browser and go to http://localhost:8080. You should see the Nginx welcome page.

Step 5: Cleanup

To delete the pod and free up resources, use:

kubectl delete pod nginx

To stop the Minikube cluster:

minikube stop

Conclusion

In this tutorial, we set up Minikube, deployed a sample Nginx pod, and accessed it using port forwarding. Minikube is an excellent tool for local Kubernetes development and testing before deploying to a production cluster.

Stay tuned for more Kubernetes tutorials!