<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Containers on Ghafoor's Personal Blog</title><link>http://ghafoorsblog.com/categories/containers/</link><description>Recent content in Containers on Ghafoor's Personal Blog</description><generator>Hugo</generator><language>en</language><managingEditor>noreply@example.com (AG Sayyed)</managingEditor><webMaster>noreply@example.com (AG Sayyed)</webMaster><copyright>Copyright © 2024-2026 AG Sayyed. All Rights Reserved.</copyright><lastBuildDate>Sat, 16 May 2026 17:45:02 +0100</lastBuildDate><atom:link href="http://ghafoorsblog.com/categories/containers/index.xml" rel="self" type="application/rss+xml"/><item><title>Service Binding</title><link>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/03-module/006-service-binding/</link><pubDate>Fri, 18 Jul 2025 10:19:35 +0000</pubDate><author>noreply@example.com (AG Sayyed)</author><guid>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/03-module/006-service-binding/</guid><description>&lt;p class="lead text-primary"&gt;
This document details how service binding in Kubernetes enables applications to securely consume external services by managing configuration and credentials through secrets and environment variables. It covers the binding process, practical steps, and usage in application code.
&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="introduction-to-service-binding"&gt;Introduction to Service Binding&lt;/h2&gt;
&lt;p&gt;Service binding is the process of connecting applications running in Kubernetes to external or backing services, such as REST APIs, databases, or event buses. It manages configuration and credentials for backend services, ensuring sensitive data is protected and made available to applications as secrets.&lt;/p&gt;</description></item><item><title>Config Map and Secrets</title><link>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/03-module/005-config-map/</link><pubDate>Fri, 18 Jul 2025 10:08:42 +0000</pubDate><author>noreply@example.com (AG Sayyed)</author><guid>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/03-module/005-config-map/</guid><description>&lt;p class="lead text-primary"&gt;
This document explains how Kubernetes ConfigMaps and Secrets enable separation of configuration and sensitive data from application code. It covers their characteristics, creation methods, and best practices for securely managing environment variables and application settings in containerized deployments.
&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="introduction-to-configmaps-and-secrets"&gt;Introduction to ConfigMaps and Secrets&lt;/h2&gt;
&lt;p&gt;Kubernetes ConfigMaps and Secrets are API objects designed to decouple configuration and sensitive data from application code. ConfigMaps store non-confidential key-value pairs, while Secrets are intended for sensitive information and provide encoding for security.&lt;/p&gt;</description></item><item><title>Rolling Updates</title><link>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/03-module/004-rolling-updates/</link><pubDate>Fri, 18 Jul 2025 09:01:29 +0000</pubDate><author>noreply@example.com (AG Sayyed)</author><guid>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/03-module/004-rolling-updates/</guid><description>&lt;p class="lead text-primary"&gt;
This document covers rolling updates in Kubernetes, including their process, benefits, command usage, and best practices for achieving zero-downtime deployments and safe application upgrades.
&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="introduction-to-rolling-updates"&gt;Introduction to Rolling Updates&lt;/h2&gt;
&lt;p&gt;Rolling updates in Kubernetes allow applications to be updated with zero downtime by incrementally replacing old pods with new ones. This approach ensures continuous availability and minimizes risk during upgrades.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="how-rolling-updates-work"&gt;How Rolling Updates Work&lt;/h2&gt;
&lt;p&gt;A rolling update gradually replaces instances of the previous version of an application with the new version, one pod at a time. Kubernetes manages the process, ensuring that a specified number of pods are always available during the update.&lt;/p&gt;</description></item><item><title>Autoscaling</title><link>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/03-module/002-autoscaling/</link><pubDate>Thu, 17 Jul 2025 16:45:00 +0000</pubDate><author>noreply@example.com (AG Sayyed)</author><guid>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/03-module/002-autoscaling/</guid><description>&lt;p class="lead text-primary"&gt;
Kubernetes autoscaling optimizes resource usage and cost by automatically adjusting pods and nodes based on demand. This document covers HPA, VPA, and CA, their configuration, and practical examples for efficient scaling.
&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="introduction-to-autoscaling"&gt;Introduction to Autoscaling&lt;/h2&gt;
&lt;p&gt;Autoscaling in Kubernetes enables dynamic adjustment of resources to match workload demand, improving efficiency and reducing costs. It operates at both the pod and cluster levels, using different types of autoscalers.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="types-of-kubernetes-autoscalers"&gt;Types of Kubernetes Autoscalers&lt;/h2&gt;
&lt;p&gt;Kubernetes provides three main autoscalers:&lt;/p&gt;</description></item><item><title>Orchestration Tools</title><link>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/01-module/006-toolings/</link><pubDate>Thu, 17 Jul 2025 09:10:55 +0000</pubDate><author>noreply@example.com (AG Sayyed)</author><guid>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/01-module/006-toolings/</guid><description>&lt;p class="lead text-primary"&gt;
Container orchestration is a layered system of tools — each solving a specific problem, each building on the last. From Docker to Kubernetes, Helm to GitOps, the ecosystem reflects our human instinct to build, refine, and automate.Understanding this machinery helps us not only use these tools effectively, but also appreciate the engineering elegance behind them.
&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="the-machinery-of-container-orchestration---tools-within-tools"&gt;The Machinery of Container Orchestration - Tools Within Tools&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Why We Build Tools&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Humans build tools to solve problems — and when those problems grow complex, we build tools to manage other tools. In software, this principle is vividly embodied in &lt;strong&gt;container orchestration&lt;/strong&gt;: a layered system where each tool solves a specific challenge, and together they form a powerful machinery for deploying, scaling, and managing applications.&lt;/p&gt;</description></item><item><title>Replicaset</title><link>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/03-module/001-replicaset/</link><pubDate>Thu, 17 Jul 2025 00:00:00 +0000</pubDate><author>noreply@example.com (AG Sayyed)</author><guid>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/03-module/001-replicaset/</guid><description>&lt;p class="lead text-primary"&gt;
ReplicaSet in Kubernetes ensures high availability and scalability by maintaining the desired number of pod replicas, automatically replacing failed pods, and supporting load balancing. This document details its operation, benefits, and deployment best practices.
&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="introduction-to-replicaset"&gt;Introduction to ReplicaSet&lt;/h2&gt;
&lt;p&gt;ReplicaSet is a Kubernetes resource that maintains a specified number of pod replicas, ensuring availability and reliability. It automatically adds or removes pods to match the desired state, minimizing downtime and service interruptions.&lt;/p&gt;</description></item><item><title>Kubernetes Setup</title><link>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/16-k8s-lab/01-module/001-k8s-setup/</link><pubDate>Tue, 15 Jul 2025 17:51:43 +0000</pubDate><author>noreply@example.com (AG Sayyed)</author><guid>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/16-k8s-lab/01-module/001-k8s-setup/</guid><description>&lt;!-- Summary --&gt;
&lt;p class="lead text-primary"&gt;
The guide walks through deploying a Kubernetes lab with MicroK8s, installing add-ons, and testing basic workloads. Key steps include cluster initialization, Helm usage, and dashboard access.
&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="kubernetes-local-installation"&gt;Kubernetes local Installation&lt;/h2&gt;
&lt;p&gt;Kubernetes can be installed locally on a desktop mahcine. There are many ways to do this, but one of the most popular and easiest methods is to use &lt;strong&gt;MicroK8s&lt;/strong&gt;. MicroK8s is a lightweight, production-grade Kubernetes distribution that can be installed on Linux systems, including Ubuntu. Other distructions are &lt;strong&gt;Minikube&lt;/strong&gt;, &lt;strong&gt;K3s&lt;/strong&gt; and &lt;strong&gt;kubeadm&lt;/strong&gt;. These tools provide a simplified way to run Kubernetes clusters on local machines, making them ideal for development and testing purposes. Another popular distro is &lt;strong&gt;Docker Desktop/Rancher Desktop&lt;/strong&gt;, it is good for &lt;code&gt;Desktop users&lt;/code&gt;.
They all can be setup with a &lt;code&gt;single-node&lt;/code&gt; cluster known as &lt;code&gt;light-weight&lt;/code&gt; or a &lt;code&gt;multi-node&lt;/code&gt; cluseter setup.&lt;/p&gt;</description></item><item><title>Kubernetes Architecture</title><link>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/02-module/004-kubernetes-architechture/</link><pubDate>Tue, 15 Jul 2025 11:54:21 +0000</pubDate><author>noreply@example.com (AG Sayyed)</author><guid>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/02-module/004-kubernetes-architechture/</guid><description>&lt;p class="lead text-primary"&gt;
This document explores the architecture of Kubernetes, describing the structure and function of clusters, the control plane, worker nodes, and their core components. It covers how Kubernetes manages containerized applications, maintains desired state, and integrates with cloud providers.
&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="kubernetes-architecture-overview"&gt;Kubernetes Architecture Overview&lt;/h2&gt;
&lt;p&gt;A Kubernetes deployment is called a cluster, consisting of a control plane (master node) and one or more worker nodes. The control plane manages the cluster state, making decisions and responding to events, while worker nodes run containerized applications.&lt;/p&gt;</description></item><item><title>Kubernetes Service</title><link>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/02-module/006-kubernetes-service/</link><pubDate>Tue, 15 Jul 2025 11:10:14 +0000</pubDate><author>noreply@example.com (AG Sayyed)</author><guid>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/02-module/006-kubernetes-service/</guid><description>&lt;p class="lead text-primary"&gt;
This document explores Kubernetes services and related objects, detailing their purposes, properties, and use cases. It covers service types (ClusterIP, NodePort, LoadBalancer, ExternalName), Ingress for routing, and workload controllers like DaemonSet, StatefulSet, and Job, providing practical insights into application networking and management.
&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="kubernetes-services-and-related-objects"&gt;Kubernetes Services and Related Objects&lt;/h2&gt;
&lt;p&gt;A service in Kubernetes is a REST object that provides a logical abstraction for a set of Pods, enabling policies for accessing Pods and acting as a load balancer. Each service is assigned a unique IP address, simplifying application access and eliminating the need for separate service discovery. Services support multiple protocols, such as TCP (default) and UDP, and can define multiple ports. Optional selectors and port mappings allow flexible targeting of backend Pods.&lt;/p&gt;</description></item><item><title>Kubernetes Objects Structure and Management</title><link>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/02-module/005-kubernetes-object/</link><pubDate>Mon, 14 Jul 2025 12:26:59 +0000</pubDate><author>noreply@example.com (AG Sayyed)</author><guid>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/02-module/005-kubernetes-object/</guid><description>&lt;p class="lead text-primary"&gt;
This document details the structure, properties, and relationships of Kubernetes objects. It covers object spec and status, labels and selectors, namespaces for resource isolation, and explains how Pods, ReplicaSets, and Deployments interact to manage application workloads in a cluster.
&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="introduction-to-kubernetes-objects"&gt;Introduction to Kubernetes Objects&lt;/h2&gt;
&lt;p&gt;Kubernetes objects are persistent entities that represent the desired state of resources in a cluster, such as applications, workloads, and configurations. Each object has an identity, state, and behavior, and is defined using YAML or JSON manifests managed by the Kubernetes API server.&lt;/p&gt;</description></item><item><title>Kubernetes Introduction</title><link>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/02-module/003-kubernetes-introduction/</link><pubDate>Mon, 14 Jul 2025 12:20:02 +0000</pubDate><author>noreply@example.com (AG Sayyed)</author><guid>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/02-module/003-kubernetes-introduction/</guid><description>&lt;p class="lead text-primary"&gt;
This document provides an overview of Kubernetes, its core concepts, capabilities, and ecosystem. It explains what Kubernetes is and is not, and how it automates deployment, scaling, and management of containerized applications in modern cloud environments.
&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="introduction-to-kubernetes"&gt;Introduction to Kubernetes&lt;/h2&gt;
&lt;p&gt;Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications. Developed by Google and maintained by the Cloud Native Computing Foundation, Kubernetes is the de facto standard for container orchestration and is widely supported across cloud and on-premises environments.&lt;/p&gt;</description></item><item><title>Container Orchestration</title><link>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/02-module/002-container-orchestration/</link><pubDate>Mon, 07 Jul 2025 10:57:46 +0000</pubDate><author>noreply@example.com (AG Sayyed)</author><guid>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/02-module/002-container-orchestration/</guid><description>&lt;p class="lead text-primary"&gt;
This document covers the challenges of managing containers at scale, the need for orchestration, and the benefits and features of leading orchestration tools like Kubernetes, Docker Swarm, Nomad, and Marathon. It explains how orchestration automates deployment, scaling, and management in cloud environments.
&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="introduction-to-container-orchestration"&gt;Introduction to Container Orchestration&lt;/h2&gt;
&lt;p&gt;Managing a single container is straightforward, but as applications grow, the number of containers increases rapidly. Connecting, managing, and scaling hundreds or thousands of containers becomes complex and overwhelming. Container orchestration addresses these challenges by automating the lifecycle of containerized applications.&lt;/p&gt;</description></item><item><title>Docker Architecture</title><link>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/01-module/005-docker-architecture/</link><pubDate>Sun, 06 Jul 2025 09:37:22 +0000</pubDate><author>noreply@example.com (AG Sayyed)</author><guid>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/01-module/005-docker-architecture/</guid><description>&lt;p class="lead text-primary"&gt;
This document explores Docker's client-server architecture, examining the interaction between Docker client, host, and registry components. It details daemon functionality, registry operations, and provides a comprehensive walkthrough of the containerization process from image creation to container deployment.
&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="docker-architecture-overview"&gt;Docker Architecture Overview&lt;/h2&gt;
&lt;p&gt;Docker utilizes a client-server architecture that provides a complete application environment for containerization. This architecture enables efficient container management through well-defined components that work together seamlessly.&lt;/p&gt;
&lt;p&gt;The Docker architecture consists of three primary components that interact to deliver containerization capabilities. Each component serves a specific role in the container lifecycle, from development to deployment and distribution.&lt;/p&gt;</description></item><item><title>Docker Objects</title><link>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/01-module/004-docker-objects/</link><pubDate>Sun, 06 Jul 2025 03:47:37 +0000</pubDate><author>noreply@example.com (AG Sayyed)</author><guid>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/01-module/004-docker-objects/</guid><description>&lt;p class="lead text-primary"&gt;
This document examines Docker objects and their relationships, covering Dockerfiles, images, containers, networks, and storage volumes. It explores essential Dockerfile instructions, image naming conventions, container lifecycle management, and Docker's approach to networking, data persistence, and plugin architecture.
&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="docker-objects-overview"&gt;Docker Objects Overview&lt;/h2&gt;
&lt;p&gt;Docker architecture consists of various interconnected objects that work together to provide containerization capabilities. These objects form the foundation of Docker&amp;rsquo;s functionality and enable developers to build, deploy, and manage containerized applications effectively.&lt;/p&gt;</description></item><item><title>Building and Running Containers</title><link>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/01-module/003-build-run-container/</link><pubDate>Sun, 06 Jul 2025 03:43:01 +0000</pubDate><author>noreply@example.com (AG Sayyed)</author><guid>http://ghafoorsblog.com/courses/ibm/devops-content/devops-pcert/09-introduction-to-containers/01-module/003-build-run-container/</guid><description>&lt;p class="lead text-primary"&gt;
This document covers the complete container development workflow, from creating Dockerfiles to building container images and running containers. It explores essential Docker commands for image management, container operations, and registry interactions with practical examples and step-by-step processes.
&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="container-development-process-overview"&gt;Container Development Process Overview&lt;/h2&gt;
&lt;p&gt;The container development process follows a structured workflow that transforms application code into running containers. This process ensures consistent deployment across different environments and enables efficient application distribution.&lt;/p&gt;</description></item></channel></rss>