GL340 · 3 days · 9+ hrs hands-on labs

Docker

Docker turned containers into everyday infrastructure, and the administrators who run it well are the ones who understand what sits underneath the CLI. This course builds that understanding in both directions: the Linux kernel features that make containers possible, namespaces, cgroups, OverlayFS, and the OCI runC runtime, and the day-to-day Docker workflow that rides on top of them. Because RHEL 9 ships Podman rather than Docker, students install the engine from Docker's own packages and learn how the RHEL container landscape, including Podman, containerd, and CRI-O, relates to what they are running.

Coverage follows the full lifecycle of a containerized application. Students configure the Docker daemon through systemd drop-ins and daemon.json, protect the control socket with TLS certificates signed by a local CA, and apply capability, user, filesystem, SELinux, and seccomp restrictions to running containers. Image work spans registry operations, multi-architecture platform images, commit and diff, save, load, export, and import, then moves into Dockerfile authoring in depth: build context, layer caching and cache invalidation, ENTRYPOINT and CMD forms, HEALTHCHECK probes, and multi-stage builds that cut both image size and attack surface. Storage covers named volumes, bind mounts, tmpfs, and volume drivers. Orchestration covers YAML authoring, Docker Compose service sets, and Swarm mode with services, stacks, secrets, quorum, and overlay networking. Networking and logging round out the stack, from bridge networks, DNS resolution, and published ports through syslog, journald, Graylog, Fluentd, Splunk, and cloud provider log drivers.

Twenty three guided lab exercises anchor the material, with hands-on work in every chapter: building containers by hand with runC, securing the daemon with TLS, hardening container privileges, optimizing build size and cache behavior, managing Swarm secrets, and publishing services on private networks. An appendix takes students through running their own Docker registry, securing it with TLS, and signing images with Cosign, the supply-chain skills that matter as Notary retires and Sigstore-based signing becomes the norm.

Who Should Attend

System administrators, DevOps engineers, site reliability engineers, and platform engineers responsible for deploying, securing, and operating containerized applications, along with developers who package their own applications as container images and need to understand how those images behave on enterprise Linux hosts.

Skills You'll Gain

Explain container isolation using Linux namespaces, cgroups, OverlayFS layering, and the OCI runC runtime
Install the Docker engine on RHEL 9 from upstream Docker packages and secure the control socket with TLS certificates
Configure the Docker daemon through systemd units and daemon.json, covering storage drivers, registries, networking, and logging defaults
Create, run, and manage container lifecycles with CPU and memory resource limits
Restrict container privileges using POSIX capabilities, user and filesystem controls, SELinux sVirt, and seccomp
Manage images across registries with pull, push, prune, commit, save, load, and multi-architecture platform images
Build images with Dockerfile instructions, ENTRYPOINT and CMD forms, and HEALTHCHECK probes
Shrink images and speed rebuilds using multi-stage builds, build context control, and layer cache management
Configure persistent storage with named volumes, bind mounts, tmpfs mounts, and volume drivers
Deploy multi-container applications with Docker Compose and scale them as Swarm services, stacks, and secrets
Configure bridge and overlay networking, private networks, DNS resolution, and published ports
Route container logs to syslog, journald, Graylog, Fluentd, Splunk, and cloud log services

Chapters & Labs

23 labs · 9+ hours hands-on
  1. Container Technology Overview 2 labs · 30 min
  2. Installing Docker 2 labs · 50 min
  3. Managing Containers 3 labs · 55 min
  4. Managing Images 2 labs · 40 min
  5. Creating Images with Dockerfile 3 labs · 85 min
  6. Docker Volumes 2 labs · 45 min
  7. Docker Compose/Swarm 3 labs · 100 min
  8. Docker Networking 3 labs · 70 min
  9. Docker Logging 1 lab · 20 min

Appendices

  • Docker Registry

Prerequisites

Proficiency with the Linux command-line interface and a broad understanding of Linux system administration, including systemd services, package management, filesystems, and basic networking. GL120 (Linux Fundamentals) or equivalent experience recommended.