Introduction to Docker

  1. Learning the evolution of container technology from Unix chroot to Linux Container (LXC)
  2. Why Docker launched Open Container Initiative (OCI)? What are the OCI specs?
  3. Visualizing the container ecosystem built by communities like Docker, CNCF, and Moby

Overview of Docker

  1. Understanding the architecture of Docker and its core components
  2. How to install, configure, and verify Docker stack in Linux machine? (hands-on)
  3. What are the four major steps involved in containerization?

Docker/OCI image

  1. What is an OCI image? How can one understand it better?
  2. What are the two ways of building an OCI image?
  3. How to automate the OCI image build process using a Dockerfile?
  4. Visualizing the derivation workflow to build OCI images, including best practices and naming conventions
  5. How to build OCI images both manual and automated? (hands-on)
  6. Deep-diving into the internals of an OCI image (hands-on)
  7. How to share and manage and share OCI images in Docker Hub? (hands-on)

Docker network

  1. What is the Docker Container Networking Model (CNM) and its significance?
  2. What are the six types of networking drivers supported by Docker CNM?
  3. Visualizing the coupling between Docker CNM and core Linux networking modules (hands-on)
  4. How to choose a Docker network based on the use case?
  5. How to verify the default Docker networks? (hands-on)
  6. Observing the behaviour of different Docker networks (hands-on)
  7. How to manage the Docker networks? (hands-on)

Docker storage

  1. Correlating Docker storage with OCI image and OCI container
  2. What are the three types of Docker storage?
  3. Selecting the best Docker storage based on the service/workload
  4. How to identify the default thin read/write layer of an OCI container? (hands-on)
  5. How to analyze the behaviour of various Docker storage? (hands-on)
  6. Managing the Docker storage (hands-on)

Docker/OCI container

  1. What are the core differences between a VM and a container? How to justify container adoption over VM infrastructure?
  2. How to observe the differences between a VM and a container? (hands-on)
  3. How does Docker create an OCI container? What are the three major modes of running OCI containers?
  4. What is the Supervisor and its role in service containerization?
  5. What is the impact of running a workload in an OCI container with/without the Supervisor? (hands-on)
  6. How to design a fully configured OCI container to run a service/microservice including best practices?
  7. How to manually provision OCI containers and verify workloads? (hands-on)
  8. Deep-diving into the internals of an OCI container? (hands-on)

Docker compose

  1. Visualizing the Infrastructure as Code (IaC) implementation using Docker compose in standalone Docker engine and Docker Swarm cluster
  2. How to use Docker compose for automating and orchestrating multi-environment Docker resources from a single YAML configuration?
  3. How to install Docker compose using the system package manager? (hands-on)
  4. How to execute and verify multiple isolated environments using Docker compose YAML configuration? (hands-on)
  5. Managing the multi-environment OCI containers using Docker compose (hands-on)