Docker Masterclass: Hands-on DevOps™ for Developers
4.3 (10 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
2,830 students enrolled

Docker Masterclass: Hands-on DevOps™ for Developers

Learn Docker with hands-on coding exercises. Take your DevOps Skill to the next level. Complete Docker for DevOps Course
4.3 (10 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
2,830 students enrolled
Last updated 11/2019
English
English [Auto]
Current price: $12.99 Original price: $19.99 Discount: 35% off
14 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 9.5 hours on-demand video
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Basic introduction of what docker is
  • Linus features that docker uses to pull off what it does( Namespaces, cgroups)
  • Linux capabilities
  • Docker filesystem
  • Basics of AWS ECS container orchestrator
  • Docker Compose
Course content
Expand all 48 lectures 09:22:59
+ Docker for DevOps Introduction
5 lectures 31:59

Introduction and why we chose Linux for the course.

Preview 03:25

The description of what docker is and why we use it

Preview 07:15

Birds eye view of various components in docker and it's interaction with OS

docker_intro_3
08:53

Difference between user-space and kernel-space

docker_intro_4
05:26

Difference between containers and virtual machines.

docker_intro_5
07:00
+ Wetting Our Beaks
8 lectures 01:24:17

Dockerfile, Docker images, Base image, docker pull

wetting_our_beaks_1
09:53

docker build, Running docker without root privileges

wetting_our_beaks_2
08:38

docker history command, From construct, ENV construct

wetting_out_beaks_3
08:42

Label construct, RUN construct, WORKDIR construct

wetting_our_beaks_4
10:42

ADD construct, COPY construct, EXPOSE construct, ENTRYPOINT construct, CMD construct, docker run command

wetting_our_beaks_5
15:10

docker repositories, docker hub, docker push, How is traffic routed to docker container?

wetting_our_beaks_6
14:33

docker ps command, sending signals to a process( docker kill, docker stop)

Wetting_our_beaks_7
06:58

How docker containers handle signals.

wetting_out_beaks_8
09:41
+ Digging Deeper
18 lectures 03:10:16

Introduction to how docker works under the hood

digging_deeper_1_intro
04:16

Introduction to cgroups

digging_deeper_2_cgroups
08:52

Cgroups CPU- hands-on 1

digging_deeper_3
10:10

Cgroups CPU- hands-on 2

digging_deeper_4
10:00

Cgroups CPU - hands-on 3 (CPU shares)

digging_deeper_5
09:16

Cgroups CPU - hands-on 4( cpuset + CPU share)

digging_deeper_6
09:10

How docker restricts CPU using cgroups.

digging_deeper_7
12:05

Introduction to cgoups memory subsystem

digging_deeper_8_cgroups_memory_1
06:01

Cgroups memory subsystem hands-on

digging_deeper_9_cgroups_memory_2
16:21

Introduction to namespaces

digging_deeper_10_namespaces_intro
06:15

Basic networking and tcpdump

digging_deeper_11_tcpdump
10:40

Ip subnetting and arp

digging_deeper_12_namespaces_subnetting_arp
14:07

IP, veth pairs, Linux software bridge

digging_deeper_13_veth_bridge_namespace
14:54

Hands-on networking namespace.

digging_deeper_14_networking_namespace
23:38

How docker uses networking namespace

digging_deeper_15_docker_networking_namespace
10:20

Pid namespaces hands-on

digging_deeper_16_pid_namespacing
11:02

Mount namespaces hands-on

digging_deeper_17_mount_namespace
08:16

User namespaces hands-on

digging_deeper_18_user_namespaces
04:53
+ Linux Capabilities
3 lectures 50:22

Introduction to Linux capabilities + hands-on

capabilities_1
21:29

Capabilities in docker

capabilities_2
10:01

Running docker containers as root

capabilities_3
18:52
+ Docker Compose
3 lectures 46:46

Docker compose introduction

docker-compose-intro-1
09:33

Bringing up an application

docker-compose-2-handson
21:35

Embedded DNS, docker networks

docker-compose-3-networking
15:38
+ Docker file system
4 lectures 01:03:46

Introduction to overlays

docker-filesystem-overlay-intro
10:53

How docker uses overlays

docker-filesystem-usage
22:05

How to take advantage of caching in docker builds

docker-filesystem-caching.mp4
19:02

Building minimal containers in docker

docker-filesystem-minimal-containers
11:46
+ Container orchestrators
5 lectures 01:12:26

Container orchestrators introduction

container_orchestrator_introduction_1
14:57

Overview of ECS orchestrator

container_orchestrator_ecs_intro_2
10:15

Hands on (part 1)

container_orchestrator_ecs_3
18:42

Hands on (part 2)

container_orchestrator_ecs_4
18:41

ECS under the hood.

container_orchestrator_ecs_5
09:51
+ Docker daemon
2 lectures 23:07

Introduction to docker daemon

dockerd_1_intro
10:08

Communicating to docker daemon over tcp/unix socket.

dockerd_2_communication
12:59
Requirements
  • Intermediate knowledge of linux
  • Basic understanding of programming
  • Basic understanding of aws will help in the section about ECS
Description

Docker and other containerization tools have taken the devops world by storm. Knowing at least the basics of docker has become mandatory for any role of software development you are in. However, for devops engineers/ site reliability engineers, a more detailed understanding of docker and other containerization technologies are desired. It does not entirely cut it to know just how to run basic commands on docker and make it work.

This course focuses on how docker works under the hood. It will guide you through the internal workings of the docker daemon and it’s interaction with the linux operating system step by step and explain how docker uses various linux kernel functionalities to make and run containers.


Besides a look at how docker operates under the hood, we will also take a look at basic docker commands, structure of build files etc-. We will also take a look at how to use docker compose to stand up a basic development environment for micro services. We will also look at building minimal container images to save on network throughput, disk size and also faster deployments. We will also be looking at what container orchestrators are and will have a hands-on session about the amazon ECS container orchestrator.

A bit of networking and linux knowledge is assumed for this course. Linux knowledge will help you all throughout the course and networking knowledge will come in handy when we cover the concepts pertaining to networking namespaces.

Course Details:

  1. Description

  2. Introduction and why we chose linux for the course.

  3. Description on what docker is and why we use it

  4. Birds eye view of various components in docker and it's interaction with OS

  5. Differerence between user-space and kernel-space

  6. Difference between containers and virtual machines.

  7. Dockerfile, Docker images, Base image, docker pull

  8. docker build, Running docker without root privileges

  9. docker history command, From construct, ENV construct

  10. Label construct, RUN construct, WORKDIR construct

  11. ADD construct, COPY construct, EXPOSE construct, ENTRYPOINT construct, CMD construct, docker run command

  12. docker repositories,docker hub, docker push,How is traffic routed to docker container?

  13. docker ps command, sending signals to a process( docker kill, dockerstop)

  14. How docker containers handle signals.

  15. Introduction to how docker works under the hood

  16. Introduction to cgroups

  17. Cgroups cpu- hands on 1

  18. Cgroups cpu- hands on 2

  19. Cgroups cpu- hands on 3(cpu shares)

  20. Cgroups cpu- hands on 4( cpuset + cpu share)

  21. How docker restricts cpu using cgroups.

  22. Introduction to cgoups memory subsystem

  23. Cgroups memory subsystem hands-on

  24. Introduction to namespaces

  25. Basic networking and tcpdump

  26. Ip subnetting and arp

  27. ip,veth pairs, linux software bridge

  28. Hands-on networking namespace.

  29. How docker uses networking namespace

  30. Pid namespaces hands-on

  31. Mount namespaces hands-on

  32. User namespaces hands-on

  33. Introduction to linux capabilities + hands on

  34. Capabilities in docker

  35. Running docker containers as root

  36. Docker compose introduction

  37. Bringing up an application

  38. Embedded dns, docker networks

  39. Introduction to overlayfs

  40. How docker uses overlayfs

  41. How to take advantage of caching in docker builds

  42. Building minimal containers in docker

  43. Container orchestrators introduction

  44. Overview of ECS orchestrator

  45. Hands on(part 1)

  46. Hands on(part 2)

  47. ECS under the hood.

  48. Introduction to docker daemon

  49. Communicating to docker daemon over tcp/unix socket.


Who this course is for:
  • Devops Engineers looking to get deep into what docker is and actually understanding how it works
  • Anyone curious about the whole of docker ecosystem and how it works
  • System Administrators
  • Cloud Infrastructure Engineers
  • Developers looking to increase their productivity
  • Developers looking to understand how Docker works
  • Beginning and advanced Docker users looking to improve their skills
  • Network admins looking to break into the world of Docker development