Docker Mastery: with Kubernetes +Swarm from a Docker Captain
- Descrição
- Currículo
- FAQ
- Revisões
Proud to be a DOCKER ENDORSED course and instructor for 2024!
Now also a CNCF ENDORSED course and instructor in 2024!
2023 Update: New CI examples with 18 lectures showing you how to automate Docker and Kubernetes in GitHub Actions, including vulnerability scanning, advanced image building, multi-platform builds, and more. Kubernetes sections were also updated to reflect CLI updates and 5 new videos on inspecting resources.
2022 Update: Refreshed install and config videos, and more support for Apple Silicon (M1 arm64) and Raspberry Pi’s!
Be ready for the Dockerized future with the number ONE Docker + Kubernetes mega-course on Udemy. Welcome to the most complete and up-to-date course for learning and using containers end-to-end, from development and testing, to server deployments and production. Taught by an award-winning Docker Captain and DevOps consultant.
Just starting out with Docker? Perfect. This course starts out assuming you’re new to containers.
Or: Using Docker now and need to deal with real-world problems? I’m here for you! See my production topics around Swarm, Kubernetes, secrets, logging, rolling upgrades, and more.
BONUS: This course comes with Slack Chat, Discord Chat server, and live monthly YouTube Q&As with me!
“I’ve followed another course on (Udemy). This one is a million times more in depth.” “…when it comes to all the docker stuff, this is the course you’re gonna want to take” – Student Udemy Review
Why should you learn from me? Why trust me to teach you the best ways to use Docker? (Hi, I’m Bret, please allow me to talk about myself for a sec):
-
I’m A Practitioner. Welcome to the real world: I’ve got 20 years of sysadmin and developer experience, over 30 certifications, and have been using Docker and the container ecosystem for my consulting clients and my own companies since Docker’s early days. Learn from someone who’s run hundreds of containers across dozens of projects and organizations.
-
I’m An Educator. Learn from someone who knows how to make a syllabus: I want to help you. People say I’m good at it. For the last few years, I’ve trained thousands of people on using Docker in workshops, conferences, and meetups. See me teach at events like DockerCon, O’Reilly Velocity, GOTO Conf, and Linux Open Source Summit. I hope you’ll decide to learn with me, and join the fantastic online Docker community.
-
I Lead Communities. Also, I’m a Docker Captain, meaning that Docker Inc. thinks I know a thing or two about Docker and that I do well in sharing it with others. In the real-world: I help run two local meetups in our fabulous tech community in Norfolk/Virginia Beach USA. I help online: usually in Slack, Discord, and Twitter, where I learn from and help others.
“Because of the Docker Mastery course, I landed my first DevOps job. Thank you Captain!” – Student Ronald Alonzo
“There are a lot of Docker courses on Udemy — but ignore those, Bret is the single most qualified person to teach you.” – Kevin Griffin, Microsoft MVP
Giving Back: a portion of my profit on this course will be donated to supporting open source and protecting our freedoms online! This course is only made possible by the amazing people creating open source. I’m standing on the shoulders of (open source) giants! Donations will be split between my favorite charities including the Electronic Frontier Foundation and Free Software Foundation. Look them up. They’re awesome!
This is a living course and will be updated as Docker and Kubernetes features change.
This course is designed to be fast at getting you started but also get you deep into the “why” of things. Simply the fastest and best way to learn the latest container skills. Look at the scope of topics in the Session and see the breadth of skills you will learn.
Also included are Slack and Discord servers with 50k+ students for getting help with this course and continuing your Docker and DevOps learning with help from myself and other students.
“Bret’s course is a level above all of those resources, and if you’re struggling to get a handle on Docker, this is the resource you need to invest in.” – Austin Tindle, Course Student
Some of the many cool things you’ll do in this course:
-
Edit web code on your machine while it’s served up in a container
-
Lock down your apps in private networks that only expose necessary ports
-
Create a 3-node Swarm cluster in the cloud
-
Install Kubernetes and learn the leading server cluster tools
-
Use Virtual IP’s for built-in load balancing in your cluster
-
Optimize your Dockerfiles for faster building and tiny deploys
-
Build/Publish your own custom application images
-
Learn the differences between Kubernetes and Swarm
-
Create your own image registry
-
Use Swarm Secrets to encrypt your environment configs, even on disk
-
Deploy container updates in a rolling always-up design
-
Create the config utopia of a single set of YAML files for local dev, CI testing, and prod cluster deploys
-
And so much more…
After taking this course, you’ll be able to:
-
Use Docker in your daily developer and/or sysadmin roles
-
Deploy apps to Kubernetes
-
Make Dockerfiles and Compose files
-
Build multi-node Swarm clusters and deploying H/A containers
-
Make Kubernetes YAML manifests and deploy using infrastructure-as-code methods
-
Build a workflow of using Docker in dev, then test/CI, then production with YAML
-
Protect your keys, TLS certificates, and passwords with encrypted secrets
-
Keep your Dockerfiles and images small, efficient, and fast
-
Run apps in Docker, Swarm, and Kubernetes and understand the pros/cons of each
-
Develop locally while your code runs in a container
-
Protect important persistent data in volumes and bind mounts
-
Lead your team into the future with the latest Docker container skills!
Extra things that come with this course:
-
Access to the course Slack team, for getting help/advice from me and other students.
-
Bonus videos I put elsewhere like YouTube, linked to from this course’s resources.
-
Join me on weekly DevOps Live streams and demos on YouTube Live.
-
Tons of reference links to supplement this content.
-
Updates to content as Docker changes their features on these topics.
-
1What is Docker in 2023? The Three InnovationsVídeo Aula
If you're totally new to Docker, this breaks down the three major features that created an entire container ecosystem.
-
2Quick Container RunVídeo Aula
Before we learn how to install Docker locally, let's just try a few commands in Docker's cloud learning tool: Play With Docker.
-
3Why Docker? Why Now in 2023?Vídeo Aula
Why did Docker need to exist? What are the big problems it solves for devs and ops?
-
4Course Roadmap (overview)Vídeo Aula
High-level overview of sections and lectures.
-
5Getting Course Resources (GitHub Repo)Texto
-
6Course Chat with Students Learning ContainersTexto
-
7YouTube Live Q&A with BretTexto
Join Bret on YouTube Live every week for getting questions answered about Docker Mastery and all things containers.
-
8The Big FAQTexto
Common Questions in This Course
-
9Installing The Right Docker for this courseVídeo Aula
Why is Docker sometimes complex to install locally? I'll explain why.
-
10Installing Docker: The Fast WayTexto
Quick links and descriptions to get you started fast.
-
11Docker for Windows: Setup and TipsVídeo Aula
Details on Docker Desktop and supporting tools on Windows.
-
12Docker for Mac: Setup and TipsVídeo Aula
Details on Docker Desktop and supporting tools on macOS.
-
13Docker for Linux Desktop: Setup and TipsVídeo Aula
Details on Docker Desktop and supporting tools on a Linux Desktop.
-
14Docker for Linux Server: Setup and TipsVídeo Aula
Details on Docker Desktop and supporting tools on a Linux server.
-
15VS Code for DevOps, Docker, and YAML EditingVídeo Aula
Some basics on Visual Studio Code and which extensions (plugins) will help in this course.
-
16Docker Version and Products ChangesTexto
Note that Docker Inc. has changed many tool names over the years. Here's some quick info.
-
17Check Our Docker Install and ConfigVídeo Aula
Section Overview, and ensuring Docker is working and on a recent version.
-
18Starting a Nginx Web ServerVídeo Aula
Learn how to run a container, and manage its existence.
-
19Debrief: What Happens When We Run a ContainerVídeo Aula
Starting a container does lots of things in the background, lets talk about those.
-
20Container VS. VM: It's Just a ProcessVídeo Aula
See how a container is quite different then a VM, and yet how they have similar concepts.
-
21Windows Containers: Should You Consider Them?Texto
"Windows Containers" were born in 2016, and allow native .exe support in containers, but are they worth it?
-
22Assignment: Manage Multiple ContainersVídeo Aula
Assignment to startup a typical three container service with nginx, mysql, and apache. Also, getting used to using docs.docker.com.
-
23Assignment Answers: Manage Multiple ContainersVídeo Aula
(optional) I walk through the assignment as how I would do it.
-
24Container CommandsQuestionário
Let's review this section and help solidify your knowledge with a quiz.
-
25What's Going On In Containers: CLI Process MonitoringVídeo Aula
Use cli commands to monitor containers and see what's running in them.
-
26Use MariaDB rather than MySQLTexto
Use MariaDB for better compatibility with commands in this course.
-
27Getting a Shell Inside Containers: No Need for SSHVídeo Aula
Use docker cli to get a full shell inside containers, no SSH needed. Also learn a about Linux distributions in containers like Ubuntu and Alpine.
-
28Docker Networks: Concepts for Private and Public Comms in ContainersVídeo Aula
Learn the concepts around container networking, and how Docker handles it. Inspect a container IP and see diagrams on how traffic gets in and out.
-
29FIXME: Change In Official Nginx Image Removes PingTexto
Quick note on a fix you should add to future lessons where I use ping from a nginx container.
-
30Docker Networks: CLI Management of Virtual NetworksVídeo Aula
Practice the commands for controlling docker networks on your local machine.
-
31Docker Networks: DNS and How Containers Find Each OtherVídeo Aula
Understand how containers find each other using dynamic DNS rather than IP's.
-
32More Container CommandsQuestionário
A few questions on previous lecture content to help you retain the knowledge.
-
33Assignment: Using Containers for CLI TestingVídeo Aula
Assignment to use container shells to test networking between them.
-
34Assignment Answers: Using Containers for CLI TestingVídeo Aula
(optional) I walk through the assignment as how I would do it.
-
35Changes To Upcoming AssignmentTexto
-
36Assignment: DNS Round Robin TestVídeo Aula
Assignment to test DNS alias naming on multiple containers.
-
37Assignment Answers: DNS Round Robin TestVídeo Aula
(optional) I walk through the assignment as how I would do it.
-
38What's In An Image (and What Isn't)Vídeo Aula
Section Overview, and a discussion about what an image is and isn't.
-
39The Mighty Hub: Using Docker Hub Registry ImagesVídeo Aula
Dig into what Docker Hub provides us. It's the future of package managers.
-
40Images and Their Layers: Discover the Image CacheVídeo Aula
Docker caches images locally, you'll need to know how it works in order to manage it properly. Let's dig in!
-
41Image Tagging and Pushing to Docker HubVídeo Aula
Getting images in and out of an image repository is a fundamental common task, lets try it.
-
42Building Images: The Dockerfile BasicsVídeo Aula
Dockerfiles are the recipes you make to create great containers. Let's start with the essentials of what's in the Dockerfile.
-
43Building Images: Running Docker BuildsVídeo Aula
Once you have your Dockerfile, you need to build an image from it. Lets see how that works.
-
44Building Images: Extending Official ImagesVídeo Aula
Dockerfiles can add on to existing images. Lets see how we might do that.
-
45ImagesQuestionário
Let's review this section and help solidify your knowledge with a quiz.
-
46Assignment: Build Your Own Dockerfile and Run Containers From ItVídeo Aula
Assignment to create your own Dockerfile recipe and test it in containers.
-
47Assignment Answers: Build Your Own Dockerfile and Run Containers From ItVídeo Aula
(optional) I walk through the assignment as how I would do it.
-
48Using Prune to Keep Your Docker System Clean (YouTube)Texto
Using the prune command to clean up various things in docker.
-
49Container Lifetime & Persistent DataVídeo Aula
Understand the lifecycle of a container and how we should separate application artifacts and unique data that we need to preserve across containers.
-
50Persistent Data: Data VolumesVídeo Aula
Learn how to use Docker Volumes to store important data we need to keep, and let your persistent data outlive the container.
-
51Shell Differences for Path ExpansionTexto
-
52Persistent Data: Bind MountingVídeo Aula
See how to create a link between host and container directories for various purposes, including easy source-file development.
-
53Persistent DataQuestionário
How data exists past and beyond the container
-
54Database Passwords in ContainersTexto
-
55Updated Postgres Version for Next Video AssignmentTexto
-
56Assignment: Database Upgrades with Named VolumesVídeo Aula
Assignment to deal with databases and persistent data in containers through volumes.
-
57Assignment Answers: Update for Recent Postgres ChangesTexto
-
58Assignment Answers: Database Upgrades with Named VolumesVídeo Aula
(optional) I walk through the assignment as how I would do it.
-
59File Permissions Across Multiple ContainersTexto
-
60Assignment: Edit Code Running In Containers With Bind MountsVídeo Aula
Assignment to edit code on host while it's served up in a container.
-
61Assignment Answers: Edit Code Running In Containers With Bind MountsVídeo Aula
(optional) I walk through the assignment as how I would do it.
-
62Docker Compose and The docker-compose.yml FileVídeo Aula
Section Overview and discussing the features and purpose of compose files, a key part of using Docker locally and in production.
-
63Compose V2Texto
-
64Trying Out Basic Compose CommandsVídeo Aula
Get your feet wet with basic commands and workflow of our new favorite tool in this course!
-
65Version Dependencies in Multi-Tier AppsTexto
-
66Compose AssignmentsTexto
-
67Compose-Assignment-1: Build a Compose File For a Multi-Container ProjectVídeo Aula
Assignment to create your own Compose file to run a multi-app service (Drupal and Postgres).
-
68Compose-Assignment-1 Answers: Build a Compose File For a Multi-Container ProjectVídeo Aula
(optional) I walk through the assignment as how I would do it.
-
69Adding Image Building to Compose FilesVídeo Aula
Learn to have Compose run your docker builds for you on startup.
-
70Using MariaDB rather than PostgreSQLTexto
-
71Compose-Assignment-2: Compose For Image BuildingVídeo Aula
Assignment to create your own Compose file to build images with custom options (Drupal and Postgres).
-
72Compose-Assignment-2 Answers: Compose For Image BuildingVídeo Aula
(optional) I walk through the assignment as how I would do it.
-
73Docker ComposeQuestionário
Let's review this section and help solidify your knowledge with a quiz.
-
74Swarm Mode: Built-In OrchestrationVídeo Aula
Learn how Docker has some great built-in features for scaling your containers and operating a cluster.
-
75Create Your First Service and Scale It LocallyVídeo Aula
Let's use your local docker in a 1-node Swarm to learn the basics.
-
76UI Change For Service Create/UpdateTexto
-
77Use Multipass to create Docker, Swarm, and K8s VMsTexto
-
78Creating a 3-Node Swarm ClusterVídeo Aula
You'll build a 3-host Swarm cluster so we can scale our apps out for high-availability.
-
79Swarm Mode BasicsQuestionário
Let's review this section and help solidify your knowledge with a quiz.
