Docker & Kubernetes: The Practical Guide
Learn Docker, Docker Compose, Development Setups, Deployment and all about Kubernetes from the ground up!
Watch Promo Enroll in Course
Docker & Kubernetes are amongst the most in-demand topics you can learn these days.
Why?
Because they significantly simplify the development and deployment process of both simple and complex software projects. Especially in web development (though not limited to that), Docker can really take you to the next level!
With Docker, you can create and manage so-called "Containers" - basically packages of code and tools required to run that code. These containers allow you to run your programs in a predictable, environment-independent way - no matter where you need to run it.
For modern DevOps but also for local development - on your own or in a team - this is a winner feature since you will no longer have any "but it worked on my machine" discussions. It works inside of a container, hence it works everywhere!
This course will teach you both Docker & Kubernetes from the ground up by using a practice-oriented approach!
We'll explore all key concepts in detail and with practical examples and demos - from images and containers, over volumes and networking all the way up to deployment and Kubernetes Cluster: This course has it all!
In detail, this course includes the following topics:
- A thorough introduction to Docker, containers and why you might want to use it
- Detailed setup instructions for macOS and Windows
- A deep-dive into the core concepts you need to know: Containers & images
- Learn how to create custom images, use existing images and how to run containers based on such images
- Get a detailed overview of the core commands you need when working with Docker
- Learn how to work with data and how to persist data with volumes
- Explore container networking - with the outside world and between multiple containers
- Learn how to work with both single and multi-container projects
- In-depth deployment instructions: Manual deployment and deployment with managed services like AWS ECS
- Understand Kubernetes core concepts & architecture
- Learn how to create Kubernetes resources, deployments, services and how to run your containers with Kubernetes
- Dive deeply into working with data in Kubernetes projects - with different types of volumes
- Kubernetes networking and DNS service discovery
- Learn how to deploy your Kubernetes project (at the example of AWS EKS)
- And much more!
All these topics are taught in great detail with slides and theory but also, most importantly, with many examples and demo!
You'll find tons of demo projects throughout the course - using programming languages like NodeJS, Python or PHP (with Laravel). You don't need to know these languages to follow along though, no worries!
This course is for:
- Everyone who has NOT worked with Docker or Kubernetes at all
- Everyone who is struggling with understanding what exactly Docker is (and why you might want to use it)
- (Web) developers who are interested in advanced development topics
20+
hours
200+
lessons
Course Curriculum
-
PreviewWelcome to the Course (2:32)
-
PreviewWhat Is Docker? (4:42)
-
PreviewWhy Docker & Containers? (5:59)
-
PreviewJoin Our Learning Community
-
PreviewVirtual Machines vs Docker Containers (8:55)
-
PreviewDocker Setup - Overview (4:31)
-
PreviewDocker Setup - macOS (3:33)
-
PreviewDocker Setup - Windows (9:44)
-
PreviewDocker Setup - Docker Toolbox for Older Systems (6:51)
-
PreviewAn Overview of the Docker Tools (3:04)
-
PreviewInstalling & Configuring an IDE (2:07)
-
PreviewGetting Our Hands Dirty! (9:23)
-
PreviewCourse Outline (4:14)
-
PreviewHow To Get The Most Out Of This Course (3:24)
-
PreviewCourse Resources
-
StartThe Academind Pro Referral Program
-
StartModule Introduction (1:16)
-
StartImages & Containers: What and Why? (2:29)
-
StartUsing & Running External (Pre-Built) Images (8:28)
-
StartOur Goal: A NodeJS App (6:40)
-
StartBuilding our own Image with a Dockerfile (11:14)
-
StartRunning a Container based on our own Image (7:58)
-
StartEXPOSE & A Little Utility Functionality
-
StartImages are Read-Only! (5:51)
-
StartUnderstanding Image Layers (8:20)
-
StartA First Summary (3:18)
-
StartQuiz 1: Images & Containers
-
StartManaging Images & Containers (2:01)
-
StartStopping & Restarting Containers (4:31)
-
StartUnderstanding Attached & Detached Containers (7:50)
-
StartAttaching to an already-running Container
-
StartEntering Interactive Mode (10:44)
-
StartDeleting Images & Containers (6:26)
-
StartRemoving Stopped Containers Automatically (3:18)
-
StartA Look Behind the Scenes: Inspecting Images (4:00)
-
StartCopying Files Into & From A Container (4:57)
-
StartNaming & Tagging Containers and Images (9:28)
-
StartTime to Practice: Images & Containers - Problem (4:00)
-
StartTime to Practice: Images & Containers - Solution (21:26)
-
StartSharing Images - Overview (6:37)
-
StartPushing Images to DockerHub (10:44)
-
StartPulling & Using Shared Images (4:50)
-
StartQuiz 2: Managing Images & Containers
-
StartModule Summary (5:00)
-
StartModule Resources
-
StartModule Introduction (1:27)
-
StartUnderstanding Data Categories / Different Kinds of Data (7:20)
-
StartAnalyzing a Real App (3:02)
-
StartBuilding & Understanding the Demo App (8:36)
-
StartUnderstanding the Problem (5:25)
-
StartIntroducing Volumes (2:57)
-
StartA First, Unsuccessful Try (7:45)
-
StartNamed Volumes To The Rescue! (8:35)
-
StartRemoving Anonymous Volumes
-
StartGetting Started With Bind Mounts (Code Sharing) (10:42)
-
StartCombining & Merging Different Volumes (7:52)
-
StartA NodeJS-specific Adjustment: Using Nodemon in a Container (7:16)
-
StartVolumes & Bind Mounts: Summary (5:54)
-
StartQuiz 3: Volumes & Bind Mounts
-
StartA Look at Read-Only Volumes (5:40)
-
StartManaging Docker Volumes (7:39)
-
StartUsing "COPY" vs Bind Mounts (3:26)
-
StartDon't COPY Everything: Using "dockerignore" Files (2:31)
-
StartAdding more to the .dockerignore File
-
StartWorking with Environment Variables & ".env" Files (8:47)
-
StartUsing Build Arguments (ARG) (5:09)
-
StartModule Summary (5:15)
-
StartModule Resources
Course Prerequisites
NO prior Docker or Kubernetes experience is required!
Basic (web) development knowledge is required
AWS (used in a couple of deployment examples, ~4 hours of the course) requires a credit card - you can follow along passively though
All pre-requisites are covered by courses in our "Academind Pro" Membership.
30 Day Money Back Guarantee - No Questions Asked!
Our courses helped thousands of students learn something new and improve their lives.
We're so convinced by our course quality that we guarantee your success and provide a full refund within the first 30 days if you're not happy with the course.
Your Instructor
As a self-taught professional I really know the hard parts and the difficult topics when learning new or improving on already-known languages. This background and experience enable me to focus on the most relevant key concepts and topics. My track record of many 5-star rated courses, more than 2,500,000 students worldwide as well as a successful YouTube channel with 900.000 subscribers is the best proof for that.
The most rewarding experience for me is to see how people find new, better jobs, build awesome web applications, work on amazing projects or simply enjoy their hobby with the help of my content.
That's why, together with Manuel Lorenz, I founded Academind to offer the best possible learning experience and to share the pleasure of learning with our students.
Frequently Asked Questions
Join 8515 happy students!
Single-Course License
Full access to "Docker & Kubernetes: The Practical Guide"
$99
Access to this course only.
This is a one-time payment that grants access to this course only, not to any other courses.
Academind Pro Membership
Unlimited access to this and all other current & future courses!