Docker

Docker is the industry-leading container platform that transformed the way how apps/microservices are shipped without worrying much about infrastructure.

Contact

Course content

Introduction to Docker

  • Understanding Service Oriented Architecture (SOA)
  • Understanding Microservice Architecture
  • What is Containerization?
  • Evolution of Containers
  • Benefits of Container
  • What is Docker?
  • History of Docker
  • What is Open Container Initiative (OCI)?
  • What is the Purpose of Open Container Initiative (OCI)?

Key Components in Docker

  • Docker Image
  • Docker Registry
  • Docker Network
  • Docker Container
  • Docker Volume
  • Docker Compose

Overview of Docker

  • Architecture of Docker-managed Containers
  • Key Differences between VM & Container

FAQ on Docker

Prerequisites for Docker

Setup Docker

  • What is Containerd?
  • Install Docker
  • Significance of Docker Programs
  • Manage Docker
  • Deep Dive into Docker

Configure Docker

  • Understanding Docker Configurations
  • Change Storage & Log Drivers of Docker
  • Apply Configuration Changes to Docker
  • Understanding Docker System Paths

Docker Image

  • What is the Purpose of Docker Image?
  • Deriving Docker Images
    • Tree Structure of Derived Docker Images
    • Benefits of Deriving Docker Images
  • Build Docker Image Manually
  • Understanding Dockerfile
  • Automated Build of Docker Images using Dockerfile
  • Manage Docker Images
  • Deep Dive into Docker Image
  • Do's and Dont's with Docker Image

Docker Network

  • What is Container Network Model (CNM)?
  • What is the Purpose of Docker Network?
  • Types of Docker Network
  • How to Choose a Docker Network?
  • Manage Docker Networks
    • Using Host Docker Network
    • Using None Docker Network
    • Using Bridge Docker Network

Docker Storage

  • What is the Purpose of Docker Storage?
  • Types of Docker Storage
  • How to Choose a Docker Storage?
  • Manage Docker Storage
    • Using Volume Docker Storage
    • Using Bind Mount Docker Storage

Docker Container

  • What is the Purpose of Docker Container?
  • Understanding¬†Docker Container
    • How Docker Container is Created?
    • How Docker Container Lifecycle is Controlled?
    • Analyzing Docker Container Configurations
  • What is Supervisor?
  • Managing Microservices within Docker Container using Supervisor
  • Design Highly Scalable Docker Container
  • Provision Docker Containers Manually
  • Manage Docker Containers
  • Deep Dive into Docker Container
  • Do's and Dont's with Docker Container

Docker Compose

  • Understanding YAML
  • What is the Purpose of Docker Compose?
  • Install Docker Compose
  • Understanding Docker Compose YAML
  • Structure of Docker Compose YAML
  • Automated/Orchestrated Provisioning of Docker Containers using Docker Compose
  • Manage Docker Containers using Docker Compose

Case Studies

  • Simulating SloopEngine Multi-Pod Architecture on Docker
  • How We Scaled Multi-Environment on Docker for Leading Product Startup

Interview on Docker

Key aspects

Prerequisites

  • A machine running Linux Ubuntu 18.04 LTS as host operating system. Don't panic, we'll help you in this.
  • Machine hardware requirements are minimum 12GB RAM, 4 CPU cores, and 100GB storage.
  • Must have exceptional knowledge on Linux-based operating systems and it's commands.
  • Must have good understanding and hands-on with Docker.

Objective

The main objective of the Docker course is to help you deploy a sample CRM app service and Redis database service on Docker containers. The CRM app is built on Python Flask micro framework and uses Redis as a database.

Audience

Anyone from the IT/software industry who is passionate and willing to containerize apps/microservices can start learning Docker. It doesn't matter whether you are a fresher or an experienced candidate, we always start from ground zero.

Activities

  • You do hands-on from day one.
  • We do digital whiteboarding to make you understand concepts and real-time implementations.
  • You can ask questions, participate in discussions, and get solutions for complex problems.
  • We deal with a variety of use cases and case studies.
  • We do deep diving on all topics.