Choose your language
Docker Fundamentals: Understanding Containers and Images
More than 2 million students worldwide

Docker Fundamentals: Understanding Containers and Images

Get hands-on with Docker from the ground up — containers, images, networking, storage, and Compose. This course gives developers and DevOps engineers the practical skills to build, run, and manage containerised applications with confidence. Stop guessing and start shipping.

Dedika for businesses

What you will learn:

  • Understand how containers differ from virtual machines and when to use each.

  • Build lean, production-ready Docker images using multi-stage Dockerfiles and layer caching.

  • Configure Docker networking drivers and connect multi-container applications by service name.

  • Manage persistent data with named volumes, bind mounts, and tmpfs storage strategies.

  • Define and operate multi-service applications declaratively with Docker Compose files.

  • Apply container security controls, including non-root users, image scanning, and secrets management.

How you study in practice Docker Fundamentals: Understanding Containers and Images

How you practise Docker Fundamentals: Understanding Containers and Images

For businesses looking to train their team

With Dedika for businesses, the course includes exercises and examples tailored to your own business and the way your company needs.

Click here

Course content

8 Chapters • 38 LessonsDuration between 4 and 360 hours (you decide)

Chapter 1See details

Virtualisation and Containerisation Foundations

  • Lesson 1 • Introduction to OS-Level Isolation

    Explains kernel namespaces and cgroups as the Linux primitives enabling containers. Connects low-level OS features to container behaviour students will observe later.

  • Lesson 2 • The Container Ecosystem Overview

    Maps the major tools, runtimes, and standards in the container landscape. Orients students before they interact with any specific tooling.

  • Lesson 3 • Traditional Virtualisation Concepts

    Covers hypervisors, guest OSes, and resource overhead in VM-based environments. Grounds students in the problem space that containers solve.

  • Lesson 4 • Containers vs. Virtual Machines

    Compares startup time, density, portability, and security boundaries between containers and VMs. Students gain a decision framework for choosing the right isolation model.

Chapter 2See details

Installing and Configuring Docker

  • Lesson 1 • Docker Daemon Configuration

    Covers the daemon configuration file, logging drivers, and storage driver selection. Proper configuration prevents performance and storage issues in subsequent exercises.

  • Lesson 2 • Installing Docker on Major Platforms

    Walks through installation on Linux, macOS, and Windows environments. Students leave with a running daemon regardless of their host OS.

  • Lesson 3 • Docker Architecture Deep Dive

    Explains the client-daemon-registry model and how components communicate. Understanding architecture prevents misdiagnosis of errors encountered in later chapters.

  • Lesson 4 • Docker CLI Essentials

    Introduces CLI syntax, help flags, and context management for multi-environment use. Students gain command fluency needed throughout the entire course.

Chapter 3See details

Working with Docker Images

  • Lesson 1 • Pulling and Tagging Images

    Covers image naming conventions, tag semantics, and digest-based pinning. Students learn to reference images precisely to ensure reproducible environments.

  • Lesson 2 • Working with Private Registries

    Demonstrates authentication, pushing images, and configuring registry mirrors. Students can integrate Docker into organisational workflows requiring private storage.

  • Lesson 3 • Managing Local Image Storage

    Addresses pruning, disk usage analysis, and image export and import workflows. Students maintain a clean local environment throughout the course.

  • Lesson 4 • Understanding Image Layers

    Explains the union filesystem, layer stacking, and copy-on-write mechanics. Layer knowledge is prerequisite for efficient Dockerfile authoring in the next chapter.

  • Lesson 5 • Inspecting and Analysing Images

    Uses docker inspect, docker history, and third-party tools to examine image metadata. Students can audit images for configuration and security properties.

Chapter 4See details

Building Images with Dockerfiles

  • Lesson 1 • Layer Caching and Build Optimisation

    Explains cache invalidation rules and instruction ordering strategies to minimise rebuild time. Optimised builds accelerate the development feedback loop.

  • Lesson 2 • Multi-Stage Builds

    Teaches multi-stage syntax to separate build and runtime environments in one Dockerfile. Students produce significantly smaller production images without extra tooling.

  • Lesson 3 • Dockerfile Syntax and Structure

    Introduces every core instruction and the order in which Docker processes them. A solid syntax foundation prevents the majority of build errors students encounter.

  • Lesson 4 • Debugging Failed Builds

    Covers build output interpretation, intermediate container inspection, and BuildKit debug features. Students resolve build failures independently and efficiently.

  • Lesson 5 • Base Image Selection Strategies

    Compares official, minimal, and distroless base images for size and security trade-offs. Students choose appropriate bases aligned with application requirements.

Chapter 5See details

Running and Managing Containers

  • Lesson 1 • Container Logging and Inspection

    Uses docker logs, docker inspect, and stats to observe container behaviour. Students diagnose runtime issues without entering the container.

  • Lesson 2 • Resource Constraints and Limits

    Applies CPU, memory, and I/O limits to containers using runtime flags. Students prevent noisy-neighbour problems in shared host environments.

  • Lesson 3 • Container Lifecycle Commands

    Covers create, start, stop, restart, pause, and remove commands with their flags. Students control every lifecycle state a container can occupy.

  • Lesson 4 • Restart Policies and Health Checks

    Configures restart policies and HEALTHCHECK instructions for self-healing containers. Students build containers that recover automatically from transient failures.

  • Lesson 5 • Interactive and Detached Modes

    Explains -it, -d, and attach semantics for different operational needs. Students select the correct run mode for debugging versus production workloads.

Chapter 6See details

Docker Networking

  • Lesson 1 • Container DNS and Service Discovery

    Explains Docker's embedded DNS server and automatic name resolution on user-defined networks. Students connect containers by name instead of fragile IP addresses.

  • Lesson 2 • Network Troubleshooting Techniques

    Applies tools like ping, curl, and netstat inside containers to diagnose connectivity issues. Students resolve network problems without leaving the Docker CLI.

  • Lesson 3 • Port Publishing and Exposure

    Covers EXPOSE, -p, and -P flags and the iptables rules Docker manages. Students safely expose container services to host and external traffic.

  • Lesson 4 • Creating and Managing Networks

    Demonstrates creating, connecting, disconnecting, and removing user-defined networks. Students build isolated network segments for multi-container applications.

  • Lesson 5 • Docker Network Drivers Overview

    Introduces bridge, host, overlay, macvlan, and none drivers with their use cases. Students select the correct driver before creating any network.

Chapter 7See details

Docker Volumes and Data Persistence

  • Lesson 1 • Container Storage Fundamentals

    Explains the writable container layer, its ephemerality, and why external storage is needed. Motivates every storage pattern introduced in subsequent sections.

  • Lesson 2 • tmpfs Mounts and In-Memory Storage

    Uses tmpfs mounts for sensitive or ephemeral data that must not touch disk. Students apply tmpfs to secrets and high-speed temporary workloads.

  • Lesson 3 • Bind Mounts

    Mounts host filesystem paths into containers for development and configuration injection. Students understand bind mount risks and appropriate use cases.

  • Lesson 4 • Volume Backup and Migration

    Demonstrates backup, restore, and migration patterns using helper containers and archives. Students protect stateful data and move it across environments.

  • Lesson 5 • Named Volumes

    Creates, mounts, inspects, and removes Docker-managed named volumes. Students use named volumes as the recommended approach for persistent container data.

Chapter 8See details

Docker Compose for Multi-Container Applications

  • Lesson 1 • Running and Managing Compose Stacks

    Covers up, down, start, stop, and scale commands for Compose-managed stacks. Students operate multi-service applications as a single unit.

  • Lesson 2 • Networking in Compose

    Explains default network creation, custom networks, and inter-service DNS in Compose. Students wire services together correctly without manual network commands.

  • Lesson 3 • Docker Compose Concepts and Syntax

    Introduces the Compose file schema, service definitions, and YAML structure. Students read and write Compose files before running any multi-container stack.

  • Lesson 4 • Compose Profiles and Override Files

    Uses profiles and override files to manage environment-specific service sets. Students maintain a single source of truth across development, testing, and staging.

  • Lesson 5 • Volumes and Configuration in Compose

    Declares named volumes, bind mounts, and configs within Compose files. Students manage persistent data and environment-specific configuration declaratively.

Certification

Your valid completion certificate

This course is for you:

  • Backend developer: ready to containerise apps without trial and error.

  • Junior DevOps engineer: building foundational skills for cloud-native pipelines.

  • Sysadmin: transitioning from VM-heavy workflows towards modern container infrastructure.

  • Computer science student: bridging classroom theory with real-world deployment tooling.

  • Freelance developer: needing reproducible environments across multiple client projects.

  • QA engineer: wanting consistent test environments that eliminate machine-specific failures.

What our students say

Your lessons are perfect. I purchased the one-year package and finally have the opportunity to follow various topics of interest without needing to change platforms... I'm grateful for everything you do, I've already recommended you to other people...
Giulio Carlo
Giulio CarloDigital Marketing Student
I like how the lessons are straight to the point and how I can change chapters and skip content I don't need.
Mariana Ferres
Mariana FerresPhotography Student
I like the content and the way videos are presented and transcribed, which speeds up the process!
Luciana Alvarenga
Luciana AlvarengaNail Design Student
The platform is fast and simple to use. The diversity of content and complementary videos really help with learning.
André Felipe
André FelipePrompt Engineering Student

Top qualifications

FAQ

Who is Dedika?

Is the certificate valid in the United Kingdom?

Are the courses free?

What is the course workload?

What are the courses like?

How do the courses work?

What is the duration of the courses?

What is the cost or price of the courses?

What is an EAD or online course and how does it work?

PDF Course