Containers Under the Hood
Containers Under the Hood, available at $74.99, has an average rating of 4.61, with 71 lectures, based on 247 reviews, and has 1665 subscribers.
You will learn about Ever wondered how Docker or any other container technology works under the hood? Understand in depth the core concepts that underlie any container technology – Namespaces, Cgroups and Overlay Filesystems. Understand the different Namespaces that enable Containers with detailed examples on PID, MOUNT, UTS and IPC Namespaces Gain in-depth knowledge on Overlay Filesystems – what they are and what role they play in the world of Containers Learn how to use Cgroups with step-by-step concrete examples for controlling the CPU and Memory available to an application Create your own container by just using Namespaces, Cgroups and Overlay Filesystems Learn what container images are, how image layering works under the hood, how they related to Overlay FS using detailed hands-on working examples. See under the hood to understand how Cgroups are used in Containers and Kubernetes for resource allocation. What a Kubernetes Control Plane is, what the key components are and how they work together Gain a solid understanding of related concepts such as the proc filesystem and mount points. Learn how these tie into Namespaces. This course is ideal for individuals who are This course is for anyone who is curious and eager to learn how Containers work under the hood. You are not expected to come in with an understanding of containers. We will start from the very basics. or Whether you are a novice looking to get started with Containers and Kubernetes or have been using them for a while, if you want to understand the key mechanisms that make these technologies work, you will gain a lot from this course. or This course comes with an Ubuntu Virtual Machine that includes all the needed software. This is the same VM I have used in this course. To truly appreciate and digest the core concepts, you must be willing to try out the examples on your own. It is particularly useful for This course is for anyone who is curious and eager to learn how Containers work under the hood. You are not expected to come in with an understanding of containers. We will start from the very basics. or Whether you are a novice looking to get started with Containers and Kubernetes or have been using them for a while, if you want to understand the key mechanisms that make these technologies work, you will gain a lot from this course. or This course comes with an Ubuntu Virtual Machine that includes all the needed software. This is the same VM I have used in this course. To truly appreciate and digest the core concepts, you must be willing to try out the examples on your own.
Enroll now: Containers Under the Hood
Summary
Title: Containers Under the Hood
Price: $74.99
Average Rating: 4.61
Number of Lectures: 71
Number of Published Lectures: 71
Number of Curriculum Items: 71
Number of Published Curriculum Objects: 71
Original Price: $94.99
Quality Status: approved
Status: Live
What You Will Learn
- Ever wondered how Docker or any other container technology works under the hood?
- Understand in depth the core concepts that underlie any container technology – Namespaces, Cgroups and Overlay Filesystems.
- Understand the different Namespaces that enable Containers with detailed examples on PID, MOUNT, UTS and IPC Namespaces
- Gain in-depth knowledge on Overlay Filesystems – what they are and what role they play in the world of Containers
- Learn how to use Cgroups with step-by-step concrete examples for controlling the CPU and Memory available to an application
- Create your own container by just using Namespaces, Cgroups and Overlay Filesystems
- Learn what container images are, how image layering works under the hood, how they related to Overlay FS using detailed hands-on working examples.
- See under the hood to understand how Cgroups are used in Containers and Kubernetes for resource allocation.
- What a Kubernetes Control Plane is, what the key components are and how they work together
- Gain a solid understanding of related concepts such as the proc filesystem and mount points. Learn how these tie into Namespaces.
Who Should Attend
- This course is for anyone who is curious and eager to learn how Containers work under the hood. You are not expected to come in with an understanding of containers. We will start from the very basics.
- Whether you are a novice looking to get started with Containers and Kubernetes or have been using them for a while, if you want to understand the key mechanisms that make these technologies work, you will gain a lot from this course.
- This course comes with an Ubuntu Virtual Machine that includes all the needed software. This is the same VM I have used in this course. To truly appreciate and digest the core concepts, you must be willing to try out the examples on your own.
Target Audiences
- This course is for anyone who is curious and eager to learn how Containers work under the hood. You are not expected to come in with an understanding of containers. We will start from the very basics.
- Whether you are a novice looking to get started with Containers and Kubernetes or have been using them for a while, if you want to understand the key mechanisms that make these technologies work, you will gain a lot from this course.
- This course comes with an Ubuntu Virtual Machine that includes all the needed software. This is the same VM I have used in this course. To truly appreciate and digest the core concepts, you must be willing to try out the examples on your own.
Take your knowledge in Containers and Linux to the next level. You don’t need to be a Containers or Linux pro. We will start from the basics.
How does this course differ from other courses on the same topic?It will be a perfect complement to the other courses on this topic. The course will take a bottom-up approach, with a strong focus on the core mechanisms that make containers possible – Namespaces, Overlay Filesystems and Cgroups.
Have you ever wondered how Containers work? No, I don’t mean just creating a Dockerfile or a Yaml file. Have you ever asked yourself (or others) what are the key mechanisms that enable us to isolate an application or to control how much CPU or Memory it gets?
How is it possible for an application to run on the same physical machine as other applications, yet not know about them? How do technologies like Docker make it happen? For many of us, Containers and Kubernetes Pods are just a black box. But they don’t have to be. In this course, you will learn the foundational mechanisms that make Containers possible. We will take an in-depth look at Namespaces, Cgroups and Overlay FS, and understand how they combine to give us Containers.
Hands-on Course :The concepts will be demonstrated with detailed hands-on examples throughout the course. You will have access to a Ubuntu Virtual Machine that I have used for the demos. The course will include a good mix of theory and demos to illustrate the concepts.
Here is what you will learn in this course:
Namespaces:We will start with how Namespaces enable isolation, the key mechanism in containerization. We will take a detailed look at different kinds of Namespaces – PID, MNT, IPC, USER and UTS , with hands-on examples to demonstrate each of these Namespaces.
Overlay Filesystems:Next, we will look at what Overlay Filesystems are, and understand the key role they play in the world of containers. Again, we will see working examples of how to create an Overlay Filesystem and how they enable sharing modules across multiple containers.
Cgroups: We will also take an in-depth look at what Cgroups are, how they enable us to control the amount of resources available to an application. We will create our own Cgroups for controlling the amount of Memory and CPU available to an example application.
Related System Concepts:You will also learn related system concepts such as the Proc filesystem and Mount Points, which will come in handy while understanding the PID and MNT Namespaces.
For the demos, we will use very simple, easy-to-understand examples instead of complex applications. The focus will be on driving home the key concepts in this course.
Docker:Once we have a solid understanding of Namespaces, Overlay Filesystems and Cgroups, we will jump into Docker. We will understand what Docker Images are and how to create one. Then, we will dive deep into how image layering works in Docker, and tie this back to the Overlay Filesystem. There will be detailed working examples to demonstrate how image layering works in Docker and we will peel these images layer-by-layer. Finally, using concrete working examples, we will demonstrate how Cgroups work behind the scenes when we control the amount of CPU or Memory available to a Docker container.
Kubernetes: We will look at the idea of a Pod, why it exists and also create a Pod by just using Namespaces. Then, we will create Kubernetes Pods, and understand other resources such as Replica Sets and Deployments. We will understand what the key components of a Kubernetes Control Plane are and how they come together in helping us orchestrate Pods. Finally, we will demonstrate how Cgroups are again the key mechanism that enable us to control resources available to a Pod, such as CPU and Memory.
This course will keep evolving as I will continue to add more advanced topics and also clarifying videos to existing topics.
Why this Course?
Because basics do not change. Once you have a firm grasp of these foundational concepts, you will be well positioned to learn any container technology of choice with ease and a lot more clarity. In addition, these ideas are used in other areas – for example Cgroups are also used in Virtual Machines. The knowledge you gain from this course will broaden your skill-set. With a solid understanding of how things work under the hood, you will see Containers in new light.
What you need to bring to the table?
Curiosity and Patience. Curiosity to understand how containers work under the hood. I intentionally go slow, specifically in the beginning of the course, setting the stage for the problem that Namespaces solve. You must be patient and understand the problem first, so that you can really appreciate why Namespaces exist and how they work. Once you understand the problem and the story setup that we will use for the most part of the course, you will start to truly appreciate the core concepts.
Pre-requisite background:If you have done some level of programming and can use basic command-line Linux, you are good to go. You are not expected to have any kind of background in container technologies such as Docker or Kubernetes. I will walk you through any related areas such as the Proc filesystem and Mount Points. Also, you do not have to have an in-depth knowledge of Linux. I will provide the required background wherever necessary. It would be beneficial if you can download and use the VM that comes for free with this course.
How should you approach this course?
First, DO NOT try to cram this into a few weeks – more so, if you have not dealt with these topics before. Because we go deep in to these topics, it is important that you pace yourself. Next, carve out time for the individual sections. There are some areas within each of these sections that demand more time. For example, Mount Namespaces is quite detailed and same goes for Image Layering. Take a break on a regular basis, revisit the ideas and let them sink in. Once it clicks, you will find it incredibly rewarding. It is also important that you get your hands dirty with the examples in the demos, and once you get the idea, try out your own examples.
Disclaimer:
Docker and the Docker logo are trademarks or registered trademarks of Docker, Inc. in the United States and other countries. Docker, Inc. and other parties may also have trademark rights on other terms used herein. This course is not in any way or form affiliated with, certified, accredited, or endorsed by Docker, Inc.
Kubernetes and the Kubernetes logo are trademarks or registered trademarks of The Linux Foundation in the United States and other countries. The Linux Foundation and other parties may also have trademark rights on other terms used herein. This course is not in any way or form affiliated with, certified, accredited, or endorsed by Kubernetes or The Linux Foundation.
Course Curriculum
Chapter 1: Introduction
Lecture 1: Introduction
Lecture 2: Our Journey
Lecture 3: What is Containerization?
Lecture 4: Course Setup
Chapter 2: Namespaces
Lecture 1: Namespaces enable Isolation
Lecture 2: A Very Quick Demo of Namespaces
Lecture 3: Where do we go from here?
Lecture 4: Why do we need Namespaces ? Understanding the Problem
Lecture 5: Namespaces – Understanding the Solution
Lecture 6: Namespaces Demo – The Setup
Lecture 7: Demo: Namespaces in Action
Lecture 8: Demo: PID Namespaces
Lecture 9: Assignment – Separate Namespace for Claude
Lecture 10: Solution – Separate Namespace for Claude
Lecture 11: Enter the Namespace
Lecture 12: Mount and UTS Namespaces – The Idea
Lecture 13: Mounting and Mount Points
Lecture 14: Demo – Mounting, Mount Points and Mount Namespaces
Lecture 15: The function of the –mount-proc Flag – A Visual
Lecture 16: Demo – Understanding the –mount-proc flag in Depth
Lecture 17: PID and MNT Namespaces – Recap
Lecture 18: Network Namespaces – Intro
Lecture 19: Demo: UTS and IPC Namespaces
Lecture 20: The Alpine Root Filesystem
Lecture 21: Summarizing Namespaces
Lecture 22: Summary Demo – Namespaces Command and Options
Chapter 3: Overlay Filesystems
Lecture 1: Overlay Filesystems: Introduction
Lecture 2: Demo – How Overlay Filesystems work
Lecture 3: Overlay Filesystems – Multiple Directories in Lower Layer
Lecture 4: Demo – Overlay FS with Multiple Directories in Lower Layer
Lecture 5: Why do we need Overlay Filesystems?
Lecture 6: Demo Example – Why Overlay FS?
Lecture 7: Demo – How Overlay FS helps with Containers
Lecture 8: Summary: Overlay FS and Namespaces
Chapter 4: Cgroups
Lecture 1: Cgroups – An Introduction
Lecture 2: Demo – Controlling Memory with Cgroups
Lecture 3: Demo – Controlling Memory Available to a Container
Lecture 4: Demo – Controlling CPU
Lecture 5: Demo – Controlling CPU with cpu.shares
Lecture 6: A Note about the Examples Used for CPU Cgroups
Lecture 7: Demo – Controlling CPU available to a Container
Lecture 8: Using cpu.shares with Containers – Example Scenarios for the Demo
Lecture 9: Demo: Controlling CPU available to a Container using cpu.shares
Lecture 10: Summary – Namespaces, Overlay FS and Cgroups
Chapter 5: Docker
Lecture 1: Why do we need Containers?
Lecture 2: Demo – Docker Introduction
Lecture 3: Container for our 'Fitness Fans' Group
Lecture 4: Dissecting Container Images – How it Relates to Overlay FS
Lecture 5: Demo – Dissecting Container Images
Lecture 6: Image Layering In Depth
Lecture 7: Demo – Image Layering
Lecture 8: Demo – More on Image Layering
Lecture 9: Demo – Resource Allocation in Docker
Lecture 10: Demo – Controlling CPU resource Using cpu.shares
Lecture 11: Summary
Lecture 12: Demo – Recap of Docker Commands
Chapter 6: Kubernetes
Lecture 1: The Idea of a Pod
Lecture 2: Why do we need Kubernetes?
Lecture 3: Demo – Creating a Pod with just Namespaces – Part 1
Lecture 4: Demo – Creating a Pod with just Namespaces – Part 2
Lecture 5: Kubelet, Pod and the Container Runtime
Lecture 6: ReplicaSets – What and Why?
Lecture 7: Demo – Replica Sets
Lecture 8: Deployments – What and Why?
Lecture 9: Demo – Deployments
Lecture 10: Kubernetes Control Plane
Lecture 11: Demo – Controlling Memory – Cgroups behind the scenes
Lecture 12: Demo – Controlling CPU – Cgroups behind the scenes
Chapter 7: Course Recap
Lecture 1: Recap and What's to Come
Chapter 8: Bonus Video – User Namespaces
Lecture 1: User Namespaces – Introduction
Lecture 2: More User Namespaces
Instructors
-
Systems Guy
All Things Systems
Rating Distribution
- 1 stars: 5 votes
- 2 stars: 1 votes
- 3 stars: 18 votes
- 4 stars: 78 votes
- 5 stars: 145 votes
Frequently Asked Questions
How long do I have access to the course materials?
You can view and review the lecture materials indefinitely, like an on-demand channel.
Can I take my courses with me wherever I go?
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don’t have an internet connection, some instructors also let their students download course lectures. That’s up to the instructor though, so make sure you get on their good side!
You may also like
- Top 10 Video Editing Courses to Learn in November 2024
- Top 10 Music Production Courses to Learn in November 2024
- Top 10 Animation Courses to Learn in November 2024
- Top 10 Digital Illustration Courses to Learn in November 2024
- Top 10 Renewable Energy Courses to Learn in November 2024
- Top 10 Sustainable Living Courses to Learn in November 2024
- Top 10 Ethical AI Courses to Learn in November 2024
- Top 10 Cybersecurity Fundamentals Courses to Learn in November 2024
- Top 10 Smart Home Technology Courses to Learn in November 2024
- Top 10 Holistic Health Courses to Learn in November 2024
- Top 10 Nutrition And Diet Planning Courses to Learn in November 2024
- Top 10 Yoga Instruction Courses to Learn in November 2024
- Top 10 Stress Management Courses to Learn in November 2024
- Top 10 Mindfulness Meditation Courses to Learn in November 2024
- Top 10 Life Coaching Courses to Learn in November 2024
- Top 10 Career Development Courses to Learn in November 2024
- Top 10 Relationship Building Courses to Learn in November 2024
- Top 10 Parenting Skills Courses to Learn in November 2024
- Top 10 Home Improvement Courses to Learn in November 2024
- Top 10 Gardening Courses to Learn in November 2024