Containerization and Orchestration
Containerization and Orchestration
This course is part of Master DevOps: CI/CD, Automation & Monitoring Specialization
Instructor: Edureka
Included with
Learn more
Ask Coursera
Recommended experience
Recommended experience
What you'll learn
Create and manage containers and images with Docker to containerize applications effectively.
Deploy, scale, and manage containerized applications using Kubernetes in a cluster environment.
Orchestrate and manage multi-container applications with Docker Compose and Kubernetes for scalability and efficiency.
Set up Prometheus and Grafana to monitor and visualize container and cluster performance, ensuring system reliability.
Skills you'll gain
Tools you'll learn
Details to know
19 assignments
See how employees at top companies are mastering in-demand skills
Build your subject-matter expertise
- Learn new concepts from industry experts
- Gain a foundational understanding of a subject or tool
- Develop job-relevant skills with hands-on projects
- Earn a shareable career certificate
There are 5 modules in this course
This course will take you on a journey from the fundamentals of containerization to advanced techniques in orchestration and monitoring, helping you build real-world expertise step by step. You will start with the basics of Docker, gradually progressing to orchestrating containers at scale with Kubernetes, and finally mastering container monitoring and visualization using Prometheus and Grafana.
With a hands-on approach, this course covers everything from the fundamentals of containerization to deploying complex, multi-container applications, managing Kubernetes clusters, and implementing observability. You will gain the skills necessary to automate, monitor, and manage large-scale containerized environments. By the end of this course, you will be able to: β’ Understand the fundamentals of Docker and containerization β’ Create and manage Docker containers and images β’ Utilize Docker Compose for multi-container applications β’ Analyze the architecture of Kubernetes and deploy applications using Kubernetes. β’ Evaluate and scale Kubernetes clusters to meet application needs. β’ Design and implement observability solutions using Prometheus and Grafana to monitor containers and clusters. This course is designed for DevOps practitioners, system administrators, cloud engineers, and developers who want to deepen their expertise in containerization, orchestration, and monitoring. Itβs perfect for those looking to enhance their ability to deploy, scale, and manage containerized applications in modern cloud-native environments while gaining proficiency in observability practices using tools like Prometheus and Grafana.
This module introduces containerization concepts and Docker fundamentals. It covers how containers work, how to use Docker CLI, port binding, and the differences between containers and virtual machines. It builds a foundation for creating and managing lightweight, portable environments.
What's included
26 videos6 readings4 assignments4 discussion prompts
26 videosβ’Total 151 minutes
- Specialization Introductionβ’4 minutes
- Course Introductionβ’6 minutes
- Containerization Scenario Yelp - Challengesβ’6 minutes
- Containerization Scenario Yelp - Transition to Dockerβ’5 minutes
- Introduction to Containerizationβ’5 minutes
- Introduction to Containerization - History and Use Casesβ’7 minutes
- How Containers Workβ’7 minutes
- Containers vs Virtual Machines - Architecture of Virtual Machinesβ’5 minutes
- Containers vs Virtual Machines - Architecture Comparisonβ’6 minutes
- Introduction to Dockerβ’5 minutes
- Introduction to Docker - Key Componentsβ’4 minutes
- Introduction to Docker - Popularityβ’6 minutes
- Docker Architecture - Architectural Diagramβ’6 minutes
- Docker Architecture - Client, Host, and Registryβ’6 minutes
- Docker Container Lifecycleβ’5 minutes
- Docker CLI Commands - General and Container Management Commandsβ’7 minutes
- Docker CLI Commands - Image Management and Networking Commandsβ’6 minutes
- Docker Installation - Update Package and Enable Dockerβ’6 minutes
- Docker Installation - Running Dockerβ’7 minutes
- Docker CLI Commands - Demonstration - Running a Containerβ’6 minutes
- Docker CLI Commands - Demonstration - Listing Containersβ’6 minutes
- Port Binding - Introduction and Typesβ’7 minutes
- Port Binding - Syntax and Exampleβ’3 minutes
- Port Binding - Demonstration - Adding Port Bindingβ’7 minutes
- Port Binding - Demonstration - Running nginx Serverβ’7 minutes
- Port Binding - Demonstration - Launching the Container in Web Browserβ’6 minutes
6 readingsβ’Total 45 minutes
- Welcome to Containerization and Orchestrationβ’5 minutes
- The Evolution of OS-Level Virtualizationβ’10 minutes
- How to use Discussion Promptβ’5 minutes
- Understanding dockerdβs Role, REST APIs, and Plugin Systemβ’10 minutes
- Docker Networking Bridge Driver and User-Defined Networksβ’10 minutes
- Summary: Containerization using Dockerβ’5 minutes
4 assignmentsβ’Total 39 minutes
- Knowledge Check: Containerization using Dockerβ’30 minutes
- Practice Quiz: Getting Started with Containersβ’3 minutes
- Practice Quiz: Docker Fundamentalsβ’3 minutes
- Practice Quiz: Docker CLI and Port Bindingβ’3 minutes
4 discussion promptsβ’Total 20 minutes
- Introduce Yourselfβ’5 minutes
- The Role of Containers in Modern Application Developmentβ’5 minutes
- Dockerβs Security Implicationsβ’5 minutes
- Port Binding Challenges in Containersβ’5 minutes
This module explores advanced Docker features including container modes, Dockerfiles, image creation, volumes, and Docker Compose. It also introduces orchestration with Docker Swarm and container monitoring using Prometheus and Grafana.
What's included
55 videos5 readings5 assignments4 discussion prompts
55 videosβ’Total 338 minutes
- Docker Container Running Modes - Detached Modeβ’7 minutes
- Docker Container Running Modes - Foreground Modeβ’5 minutes
- Starting Containers in Different Modes - Interactive Modeβ’7 minutes
- Starting Containers in Different Modes - Detached Modeβ’7 minutes
- Dockerfile - Instructionβ’5 minutes
- Dockerfile - Instruction Exampleβ’4 minutes
- Dockerfile - Creating Dockerfileβ’7 minutes
- Docker Daemonβ’6 minutes
- Docker Daemon - Creating a Dockerfileβ’7 minutes
- Docker Daemon - Build the Docker Imageβ’7 minutes
- Docker Image - Principles and Featuresβ’6 minutes
- Docker Image - Componentsβ’6 minutes
- Docker Image - Creating, Building, and Running Dockerfileβ’7 minutes
- Writing a Dockerfile to Create an Image - Installing node.jsβ’7 minutes
- Writing a Dockerfile to Create an Image - Installing Dependencies and Creating Serverβ’6 minutes
- Writing a Dockerfile to Create an Image - Building Imageβ’5 minutes
- Managing Docker Images - Registries and Image Distributionβ’7 minutes
- Managing Docker Images - Docker Hubβ’6 minutes
- Managing Docker Images - Securing and Managing Imagesβ’5 minutes
- Pulling and Pushing Images - Pushing an Imageβ’7 minutes
- Pulling and Pushing Images - Pulling an Imageβ’7 minutes
- Setting up Docker Hub - Logging into Docker Hubβ’7 minutes
- Setting up Docker Hub - Pull and Run Image from Docker Hubβ’6 minutes
- Storage and Volumes in Docker - Managing Storageβ’4 minutes
- Storage and Volumes in Docker - Volumesβ’7 minutes
- Storage and Volumes in Docker - Demonstration - Creating and Listing Docker Volumesβ’5 minutes
- Storage and Volumes in Docker - Demonstration - Verifying Data Across Container Lifecyclesβ’6 minutes
- Docker Compose - Introductionβ’4 minutes
- Docker Compose - Important Commandsβ’5 minutes
- Docker Compose Installationβ’7 minutes
- Multi-container Deployment with Compose - Creating and Configuring a docker-compose Fileβ’7 minutes
- Multi-container Deployment with Compose - Full Stack Setup and Verificationβ’7 minutes
- Multi-container Deployment with Compose - Managing WordPress, MySQL, and Full Lifecycle Operationsβ’6 minutes
- Docker Swarm - Introduction and Swarm Nodesβ’6 minutes
- Docker Swarm - Architecture and Usesβ’7 minutes
- Running Docker in Swarm Mode - Setting Up Docker Swarmβ’7 minutes
- Running Docker in Swarm Mode - Adding Workers and Deploying Services in Docker Swarmβ’6 minutes
- Running Docker in Swarm Mode - Scaling and Fault Tolerance in Docker Swarmβ’6 minutes
- Running Docker in Swarm Mode - Accessing and Cleaning Up Docker Swarm Servicesβ’5 minutes
- Docker Container Monitoringβ’7 minutes
- Setting Up Prometheus to Monitor Docker - Prometheus Configuration and Docker Compose Setupβ’7 minutes
- Setting Up Prometheus to Monitor Docker - Deploying Prometheus with Docker Composeβ’5 minutes
- Configuring Prometheus Scrape Targets for Docker Containers - Target Configuration and Deploymentβ’7 minutes
- Configuring Prometheus Scrape Targets for Docker Containers - Visualizing Docker Container Metricsβ’7 minutes
- Docker Metrics CPU, Memory, and Network Usage - Analyzing CPU and Network Usageβ’5 minutes
- Docker Metrics CPU, Memory, and Network Usage - Real-Time Metrics with Docker Stats and Inspecβ’5 minutes
- Docker Metrics CPU, Memory, and Network Usage - Real-Time Monitoring with Docker stats and cAdvisorβ’6 minutes
- Using Prometheus to Query and Visualize Docker Metrics - Integrating Prometheus, cAdvisor, and Grafanaβ’6 minutes
- Using Prometheus to Query and Visualize Docker Metrics - Visualizing Docker Metrics with Prometheus, cAdvisor, and Grafana Dashboardsβ’7 minutes
- Using Prometheus to Query and Visualize Docker Metrics - Creating Real-Time Docker Dashboards in Grafana with Prometheus and cAdvisor Dataβ’7 minutes
- Using Prometheus to Query and Visualize Docker Metrics - Adding a MySQL Container β’5 minutes
- Using Prometheus to Query and Visualize Docker Metrics - Real-Time Performance Trackingβ’4 minutes
- Creating Dashboards for Docker Containers in Grafana - Setting Up Environmentβ’7 minutes
- Creating Dashboards for Docker Containers in Grafana - Adding Metrics to the Dashboardβ’6 minutes
- Creating Dashboards for Docker Containers in Grafana - Customizing and Visualizing Dataβ’6 minutes
5 readingsβ’Total 45 minutes
- Dockerfile Instructionsβ’10 minutes
- Multistage Dockerfile Buildsβ’10 minutes
- Docker Compose Advanced Featuresβ’10 minutes
- Creating Custom Prometheus Exporters for Application-Level Metrics in Dockerβ’10 minutes
- Summary: Advanced Docker Management and Orchestrationβ’5 minutes
5 assignmentsβ’Total 42 minutes
- Knowledge Check: Advanced Docker Management and Orchestrationβ’30 minutes
- Practice Quiz: Docker Container Modes and Image Creationβ’3 minutes
- Practice Quiz: Managing Docker Images and Volumesβ’3 minutes
- Practice Quiz: Orchestrating Containers: Docker Compose and Swarmβ’3 minutes
- Practice Quiz: Monitoring and Visualizing Docker Containers with Prometheus and Grafanaβ’3 minutes
4 discussion promptsβ’Total 20 minutes
- Optimizing Dockerfile for Image Creationβ’5 minutes
- Image and Volume Management Best Practicesβ’5 minutes
- Multi-container Applications with Docker Composeβ’5 minutes
- Proactive Monitoring and Alerting in E-Commerce Platformsβ’5 minutes
This module covers Kubernetes core concepts such as Pods, Controllers, Services, and Deployments. It also introduces kubectl, scaling strategies, rolling updates, and the architecture of Kubernetes clusters.
What's included
36 videos4 readings4 assignments3 discussion prompts
36 videosβ’Total 216 minutes
- Kubernetes Case Studyβ’7 minutes
- What is Kubernetes - Introductionβ’6 minutes
- What is Kubernetes - Importance of Kubernetesβ’6 minutes
- Kubernetes Core Concepts - Overviewβ’7 minutes
- Kubernetes Core Concepts - Nodes and Podsβ’5 minutes
- Kubernetes Core Concepts - ReplicaSets and Namespacesβ’6 minutes
- What is Kubectlβ’3 minutes
- kubectl Installationβ’7 minutes
- Kubectl Basic Command - create, get, run, and exposeβ’7 minutes
- Kubectl Basic Command - delete, apply, and editβ’4 minutes
- Kubectl Advanced Commands - rollout, scale, and setβ’7 minutes
- Kubectl Advanced Commands - describe, exec, and logsβ’6 minutes
- Working with kubectl Commands - Setting Up and Verifying Kubernetes Clusterβ’6 minutes
- Working with kubectl Commands - Creating the YAML File for Deploymentβ’7 minutes
- Working with kubectl Commands - Describing Deploymentsβ’4 minutes
- Working with kubectl Commands - Scaling Deploymentsβ’6 minutes
- What are Podsβ’6 minutes
- Pod Lifecycle - Pending Phaseβ’6 minutes
- Pod Lifecycle - Running, Succeeded, and Failedβ’6 minutes
- ReplicaSet and ReplicationController - Defining ReplicaSetβ’5 minutes
- ReplicaSet and ReplicationController - Use Casesβ’5 minutes
- ReplicaSet and ReplicationController - Comparisonβ’7 minutes
- Kubernetes Pods Demonstration - Pod Creation and Verificationβ’7 minutes
- Kubernetes Pods Demonstration - Describing a Pod and Verifying Connectivityβ’5 minutes
- Kubernetes Pods Demonstration - Testing Connectivity with Port Forwardingβ’3 minutes
- Deployment - Introduction and Key Featuresβ’5 minutes
- Deployments - Strategiesβ’7 minutes
- Deployments - Use Casesβ’3 minutes
- Rolling Updates and Rollbacks - Overviewβ’7 minutes
- Rolling Updates and Rollbacks - Configuration Parametersβ’6 minutes
- Rolling Updates and Rollbacks - Performing a Rolling Updateβ’7 minutes
- Deployments, Rolling Updates and Scaling in Kubernetes - Setting up Deployments β’7 minutes
- Deployments, Rolling Updates and Scaling in Kubernetes - Exposing Deployments via NodePort β’7 minutes
- Deployments, Rolling Updates and Scaling in Kubernetes - Performing Rolling Updatesβ’7 minutes
- Deployments, Rolling Updates and Scaling in Kubernetes - Performing Rollbackβ’7 minutes
- Deployments, Rolling Updates and Scaling in Kubernetes - Autoscaling with HPAβ’6 minutes
4 readingsβ’Total 35 minutes
- Kubernetes Control Plane Components in Depthβ’10 minutes
- Kubectl Plugins and Client-Side Configurationβ’10 minutes
- Kubernetes HealthβCheck Patternsβ’10 minutes
- Summary: Introduction to Kubernetesβ’5 minutes
4 assignmentsβ’Total 39 minutes
- Knowledge Check: Introduction to Kubernetesβ’30 minutes
- Practice Quiz: Getting Started with Kubernetesβ’3 minutes
- Practice Quiz: Introduction to kubectlβ’3 minutes
- Practice Quiz: Pods and Scaling in Kubernetesβ’3 minutes
3 discussion promptsβ’Total 15 minutes
- Kubernetes in Multi-Cloud Environmentsβ’5 minutes
- Troubleshooting with kubectl in Productionβ’5 minutes
- Deploying and Managing ReplicaSetsβ’5 minutes
This module focuses on Kubernetes networking, persistent storage, and advanced topics like StatefulSets, ConfigMaps, and Helm. It concludes with in-depth monitoring using Prometheus and Grafana to visualize metrics and set alerts.
What's included
51 videos5 readings5 assignments4 discussion prompts
51 videosβ’Total 307 minutes
- Labels, Selectors and Annotations - Characteristics of Labelsβ’6 minutes
- Labels, Selectors and Annotations - Types of Selectorsβ’6 minutes
- Labels, Selectors and Annotations - Example of Annotationβ’7 minutes
- Services - ClusterIPβ’7 minutes
- Services - ClusterIP (Default) Exampleβ’3 minutes
- Services - NodePort Serviceβ’6 minutes
- Services - LoadBalancer Serviceβ’5 minutes
- Services - ExternalName Serviceβ’3 minutes
- Services - Headless Serviceβ’6 minutes
- Services - Demonstration - Setting Up the Clusterβ’7 minutes
- Services - Demonstration - Testing Communication with a Podβ’7 minutes
- Services - Demonstration - Creating the NodePort Serviceβ’5 minutes
- Services - Demonstration - NodePort and LoadBalancer for Internal and External Accessβ’6 minutes
- Services - Demonstration - ExternalName Service for External Resource Mappingβ’6 minutes
- Services - Demonstration - ClusterIP, NodePort, LoadBalancer, and External Name for External Resource Mappingβ’5 minutes
- Persistent Volumes - Introductionβ’6 minutes
- Persistent Volumes - Access Modes and Persistent Volume Claims (PVCs)β’7 minutes
- Persistent Volumes - Lifecycleβ’2 minutes
- Persistent Volumes and Persistent Volume Claims - Creating the Persistent Volume Claimβ’7 minutes
- Persistent Volumes and Persistent Volume Claims - Verifying the Volume and Pod Statusβ’7 minutes
- Persistent Volumes and Persistent Volume Claims - Terminating the Pod and Verifying Volume Detachmentβ’6 minutes
- Ephemeral Volume - Creating the Pod with Ephemeral Volumeβ’7 minutes
- Ephemeral Volume - Data Storage and Verificationβ’5 minutes
- Headless Service - Introductionβ’6 minutes
- Headless Service - Use Cases and Exampleβ’4 minutes
- StatefulSets - Overviewβ’7 minutes
- StatefulSets - Components and Workingβ’5 minutes
- StatefulSets - Demonstration - Headless Service Setupβ’5 minutes
- StatefulSets - Demonstration - StatefulSet YAML Configurationβ’7 minutes
- StatefulSets - Demonstration - Verifying Pod Connectivityβ’7 minutes
- StatefulSets - Demonstration - Scaling StatefulSetβ’6 minutes
- ConfigMaps and Secrets - Overview of ConfigMaps β’5 minutes
- ConfigMaps and Secrets - Types of Secretsβ’7 minutes
- ConfigMaps and Secrets - Creating a ConfigMapβ’7 minutes
- ConfigMaps and Secrets - Using ConfigMap and Secret in a Podβ’7 minutes
- ConfigMaps and Secrets - Creating Secretsβ’4 minutes
- Helm Charts - Demonstration - Creating Your First Helm Chartβ’7 minutes
- Helm Charts - Demonstration - Deploying and Testing the Chartβ’7 minutes
- Helm Charts - Upgrading Helm Chartsβ’5 minutes
- Setting Up Prometheus for Kubernetes Clusters - Installing Prometheus Using Helmβ’7 minutes
- Setting Up Prometheus for Kubernetes Clusters - Adding the Prometheus Helm Repositoryβ’7 minutes
- Kubernetes Metrics Pods, Nodes, and Deployments - Setting Up Prometheus and Grafana Dashboardsβ’6 minutes
- Kubernetes Metrics Pods, Nodes, and Deployments - Visualizing Metricsβ’6 minutes
- Kubernetes Metrics Pods, Nodes, and Deployments - Displaying Prometheus Dataβ’7 minutes
- Prometheus Kubernetes Exporters and Custom - Creating Custom Metricsβ’6 minutes
- Prometheus Kubernetes Exporters and Custom Metrics - Build and Deploy a Custom Metric Applicationβ’6 minutes
- Prometheus Kubernetes Exporters and Custom Metrics - Pushing Custom Metrics for Prometheus Monitoringβ’6 minutes
- Prometheus Kubernetes Exporters and Custom Metrics - Deploying a Node.js App on Kubernetesβ’7 minutes
- Prometheus Kubernetes Exporters and Custom Metrics - Metrics Configuration and Visualization on Kubernetesβ’7 minutes
- Configuring Prometheus to Scrape Kubernetes Metrics - Accessing and Viewing Kubernetes Metricsβ’7 minutes
- Configuring Prometheus to Scrape Kubernetes Metrics - Capturing and Viewing Kubernetes Dataβ’6 minutes
5 readingsβ’Total 45 minutes
- CNI plugins: Calico vs Flannel vs Weave Netβ’10 minutes
- Dynamic Provisioning and StorageClass in Kubernetesβ’10 minutes
- Helm Chart Development Best Practicesβ’10 minutes
- Alertmanager and Automated Remediationβ’10 minutes
- Summary: Kubernetes Networking and Storage β’5 minutes
5 assignmentsβ’Total 42 minutes
- Knowledge Check: Kubernetes Networking and Storage β’30 minutes
- Practice Quiz: Kubernetes Servicesβ’3 minutes
- Working with Persistent Storage in Kubernetesβ’3 minutes
- Practice Quiz: Advanced Kubernetes Concepts: StatefulSets, ConfigMaps, and Helmβ’3 minutes
- Practice Quiz: Monitoring and Visualizing Kubernetes Metrics with Prometheus and Grafanaβ’3 minutes
4 discussion promptsβ’Total 20 minutes
- Load Balancing with Kubernetes Servicesβ’5 minutes
- Managing Dynamic Storage Provisioningβ’5 minutes
- Managing Application Configuration with ConfigMapsβ’5 minutes
- Setting Alerts for Kubernetes Issuesβ’5 minutes
This final module consolidates the knowledge and skills gained throughout the course. Learners will complete a practice project and graded assessments, reinforcing their ability to deploy, orchestrate, and monitor containerized applications in real-world scenarios.
What's included
1 video1 reading1 assignment1 discussion prompt
1 videoβ’Total 4 minutes
- Course Summaryβ’4 minutes
1 readingβ’Total 60 minutes
- Practice Project: ShopVerse DevOps Transformation Project: Building a Full-Stack CI/CD and Infrastructure Automation Pipelineβ’60 minutes
1 assignmentβ’Total 45 minutes
- End Course Knowledge Check: Containerization and Orchestrationβ’45 minutes
1 discussion promptβ’Total 5 minutes
- Describe Your Learning Journeyβ’5 minutes
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.
Instructor
Offered by
Explore more from Software Development
- Status: Free Trial
Course
- Status: Free Trial
Course
- Status: Free TrialS
Simplilearn
Course
- Status: Free Trial
Course
Why people choose Coursera for their career
Advance your career with an online degree
Earn a degree from world-class universities - 100% online
Frequently asked questions
This course covers the end-to-end process of working with containers. It starts with Docker fundamentals, progresses to deploying and scaling applications using Kubernetes, and includes monitoring and observability with Prometheus and Grafana. Designed for DevOps professionals, system administrators, and developers, the course focuses on building practical skills for managing containerized applications in cloud-native environments.
Containerization is a lightweight form of virtualization that allows you to package applications and their dependencies into containers. Containers can run on any system that supports containerization without worrying about dependencies, making them portable and scalable.
In this course, you will learn to use Docker for containerization, Kubernetes for orchestration, and Prometheus and Grafana for monitoring and observability.
More questions
Financial aid available,
