Filters
How to search
  • Plain words find names, texts and examples.
  • "two words" finds the exact phrase.
  • --name or -x finds an option.
  • #word looks only inside commands.
  • @grep finds lessons and labs that use grep.
  • Filters: cat:network · in:labs · in:notes · level:rhcsa · ch:8 · root:yes. Put ! before a word to leave it out. OR between words means one of them.
  • ↑ ↓ to move · Enter to open · Esc to close · / to search

Containers with Docker and Podman

Containers before Kubernetes: images, Dockerfiles, volumes, networks, Compose, registries and container security — with Docker and Podman side by side.

Course by
Docker
Course code
Containers
Version
2026
Lessons
46

These summaries follow the public outline of the course. I wrote every lesson in my own words and tested the commands on RHEL 10. They are not Red Hat training material. Take the official course for the full content and the hands-on labs.

Next course: CKA

Parts and chapters

Part 1

Run containers

  1. 1Understand containers, images and registriesWhat is a container?5 lessons
    Lessons
    1. 1.1 Compare containers and VMs
    2. 1.2 Know the Linux features behind it
    3. 1.3 Understand images and layers
    4. 1.4 Know registries and names
    5. 1.5 Know the standards and tools
  2. 2Run and manage containersRunning containers5 lessons
    Lessons
    1. 2.1 Run a container
    2. 2.2 Look at running containers
    3. 2.3 Read logs and get a shell
    4. 2.4 Limit resources
    5. 2.5 Stop, start and remove
  3. 3Pull, tag, push and clean up imagesWorking with images and registries6 lessons
    Lessons
    1. 3.1 Pull and inspect images
    2. 3.2 Tag images
    3. 3.3 Log in and push
    4. 3.4 Save and load images as files
    5. 3.5 Clean up disk space
    6. 3.6 Run your own registry

Part 2

Build images

  1. 4Write a DockerfileBuilding images5 lessons
    Lessons
    1. 4.1 Know the instructions
    2. 4.2 Build a Python app image
    3. 4.3 Use the build cache well
    4. 4.4 Keep the build context small
    5. 4.5 Know CMD and ENTRYPOINT
  2. 5Build small images with multi-stage buildsImage best practices5 lessons
    Lessons
    1. 5.1 Split build and runtime
    2. 5.2 Run as a non-root user
    3. 5.3 Pin the base and rebuild often
    4. 5.4 Add metadata
    5. 5.5 Check an image before you ship it

Part 3

Apps and security

  1. 6Keep data with volumes and bind mountsPersisting data5 lessons
    Lessons
    1. 6.1 Choose the storage type
    2. 6.2 Use named volumes
    3. 6.3 Use bind mounts
    4. 6.4 Back up and restore a volume
    5. 6.5 Use tmpfs and read-only containers
  2. 7Connect containers with networksContainer networking4 lessons
    Lessons
    1. 7.1 Know the network drivers
    2. 7.2 Use a user-defined network
    3. 7.3 Publish ports carefully
    4. 7.4 Debug container networking
  3. 8Run multi-container apps with ComposeDocker Compose5 lessons
    Lessons
    1. 8.1 Write a compose file
    2. 8.2 Run the app
    3. 8.3 Wait for real readiness
    4. 8.4 Use files per environment
    5. 8.5 Know when to move on
  4. 9Secure images and containersContainer security6 lessons
    Lessons
    1. 9.1 Scan images for vulnerabilities
    2. 9.2 Make an SBOM
    3. 9.3 Sign and verify images
    4. 9.4 Run containers with fewer rights
    5. 9.5 Keep secrets out of images
    6. 9.6 Check the host and the daemon