Docker is one of the, if not the most essential, tools that every developer
needs to know. You need to know what it is, why it is necessary and how you
can use everything it offers. It has been the most used developer platform tool
for the past three years, according to the StackOverflow survey and knowing how
to use it is required for most developer job listings. In this course, author
Dan Clarke will teach you everything you need to know to get started and master
the usage of Docker, from how to install it to how you can publish your very own
images and use it in your developer workflow.
Course Curriculum
3h 26m 17 sections
Welcome
01:41Free preview
What will you learn in this course?
03:06Free preview
Who is the course for and prerequisites
00:54Free preview
Installing Docker on Windows
03:45
Installing Docker on Linux
03:42
Installing Docker on Mac
00:53
Enabling hardware virtualization in the BIOS
01:00
Introduction
00:23
Containers
03:53
Images
01:47
Container registries and Docker Hub
02:44
Docker CLI
03:03
Docker Desktop GUI
03:56
Visual Studio Code Extension
01:33
Introduction
00:48
Port mapping
02:23
Detached mode and logs
02:50
Shell access and makes changes inside containers
05:23
More example 3rd party images
07:25
Image tags
05:37
Image layers and caching
02:53
Introduction
01:11
Frontend
02:42
Backend
03:31
A simple database interaction
04:13
Building our API image
04:02
Dockerfile 101
07:03
Building our frontend image
03:24
Introduction
01:03
The docker-compose YAML file
01:47
The docker compose CLI command
03:28
Services as DNS entries
00:39
Using docker compose to build our images
02:09
Seeding our database
04:37
Pushing images to Docker Hub
06:36
Introduction
00:23
Docker and CI/CD
03:20
Leveraging Docker for Testing
09:30
Spikes
01:27
Introduction and types of persistent storage in Docker
02:47
Creating Volumes
01:31
Mounting volumes in containers
06:26
Mounting bind mounts in containers
02:55
Volumes in Docker compose
03:54
Backing up volumes
04:21
Anonymous volumes and the Dockerfile VOLUME instruction
02:48
Introduction
00:56
Default bridge network
04:14
Custom bridge networks
06:46
Networking on Docker Compose
06:49
Host network
04:43
Leveraging host.docker.internal
00:59
Summary of other network types
03:00
Introduction
01:36
Image scanning
04:11
Running containers as non-root
06:39
Under the hood: How containers work in Linux
06:26
The difference between ENTRYPOINT and CMD in Dockerfile
Dan Clarke is an independent software developer and consultant, specialising in .NET, Azure, Docker, and Kubernetes. He's a Microsoft MVP; speaker; hosts The Unhandled Exception podcast; runs the .NET Oxford user-group; and also has a YouTube channel covering various programming topics.