Skip to content

DOCKERS โ€” Docker & Containerization Training

Last reviewed: 2026-05-29

Purpose: Comprehensive Docker training covering Docker fundamentals, Docker Compose, container networking, Kubernetes basics, and advanced topics including observability stacks, Apache Pinot analytics, and self-hosted services.

Overview

This is the largest training module with 78 files across 36 subfolders. It covers the full Docker ecosystem โ€” from installation and container management to complex multi-service stacks with observability, streaming, and database backends.

Folder Structure

Root Level

Resource Type Size Description
slides-getting-started.pdf PDF 7.6 MB Docker getting-started slide deck
first-demo-starting-setup.zip ZIP 3 KB Code for first Docker demo
InstallPostgresInDockers.docx Word 5 KB Instructions for running PostgreSQL in Docker
docker.txt Text 2 KB CLI history log showing Docker installation and commands

COMPOSE IMAGES โ€” 30 subfolders, 60 files

Common Services

Subfolder Files Description
postgresql/ 2 Docker Compose for PostgreSQL with pgAdmin (docker-compose.yml + variant)
postgre/ 2 Additional PostgreSQL compose setups
drupal/ 1 Drupal CMS docker-compose.yml
excalidraw/ 1 Excalidraw collaborative whiteboard (docker_compose_exca.yaml)
email/ 1 Email service compose (docker_compose.yaml)
openwebui/ 1 OpenWebUI for LLM chat (openwebui.yaml)
HomeAssistand and Mosquitto/ 1 Home Assistant + Mosquitto MQTT (homeAssistant1.yaml, 3 KB)
nats/ โ€” Empty folder โ€” placeholder for NATS messaging
mssql_install.txt โ€” Shell commands for running MS SQL Server 2019/2022 in Docker containers

Observability Stack โ€” OPENTELEMETRY (10 subfolders, 12 files)

A full observability stack using OpenTelemetry, Prometheus, Grafana, Alertmanager, and Jaeger:

Subfolder Files Description
Root 4 prometheus.yml, docker-compose.yml, reloadPrometheus.sh, otel-collector-config.yaml
rule/ 2 recording_rules.yaml, alert.yaml โ€” Prometheus recording rules and alerts
prometheus-data/rule/ 1 Duplicate alert.yaml for Prometheus data directory
grafana/provisioning/datasources/ 1 datasources.yml โ€” auto-configured data sources
grafana/provisioning/dashboards/ 1 dashboards.yml โ€” auto-provisioned dashboards
alertmanager/ 1 alertmanager.yml โ€” alert routing configuration
elasticsearch-data/ โ€” Empty โ€” placeholder for ES storage
grafana-data/ โ€” Empty โ€” placeholder for Grafana storage

Services covered: OpenTelemetry Collector, Prometheus metrics, Grafana dashboards, Alertmanager, Jaeger distributed tracing.

Streaming & Data โ€” KAFKA, KSQL, PINOT

Subfolder Files Description
kafka/ 3 Kafka compose, xeotec-compose for Kafka streaming, Pinot table batch
ksql/ 5 SQL scripts: JointTables.sql, SplitString.sql, CreateFMNEAEvents*.sql, CreateJOBID.sql
pinot/ 29 Apache Pinot โ€” real-time OLAP analytics engine
Apache Pinot Sub-Content Breakdown

The pinot directory contains a full Apache Pinot setup:

  • Root: InferSchemaFromjson.sh, docker-compose_ApachePinot.yml, UploadTableConfig.sh, ConfigPinot.sh
  • SQL/: PinotQueries.sql โ€” example Pinot queries
  • pinot-quick-start/: batch-job-specs.yml, transcript-table-offline.json, transcript-schema.json, rawdata/transcript.csv โ€” quick-start demo with transcript data
  • fnmea_events/: CheckIn.json, CheckOut.json, checkout_events.json, event.json โ€” FMEA event data samples
  • config/: 10 JSON files โ€” table schemas and configs for meta_events, jobid_meta_events, fnmea_events, checkin/checkout events
  • meta_event/: InferMetaEventFromjson.sh, event.json, PinotMetaEventsAddTable.bat
  • event-tables/: fnmea-events-table-OFFLINE.json, fnmea-events-table-schema.json, fnmea-events-table.json

NETWORKING โ€” 2 subfolders, 5 files

Docker networking training content:

Resource Description
networks-starting-setup.zip ZIP archive (2 KB) of networking demo code
networks-starting-setup/Dockerfile Dockerfile for networking demo (95 B)
networks-starting-setup/app.js Node.js app (2 KB) for network demo
networks-starting-setup/package.json Node dependencies
networks-starting-setup/models/favorite.js Model module (240 B)

KUBERNETES โ€” 3 files

Introduction to Kubernetes content:

Resource Size Description
Cheat-Sheet-Kubernetes.pdf 52 KB Kubernetes command cheat sheet
slides-kubernetes-intro.pdf 551 KB Kubernetes introductory slide deck

SECTION 2 โ€” 2 files

Docker images and containers deep-dive:

Resource Size Description
slides-images-containers.pdf 146 KB Slide deck on Docker images and containers
Cheat-Sheet-Images-Containers.pdf 60 KB Docker images/containers cheat sheet

Key Technologies Covered

Topic Details
Docker Installation Ubuntu Docker CE install via apt, GPG key setup
Container Management run, ps, exec, build, images, push/pull
Docker Compose PostgreSQL, pgAdmin, Drupal, Kafka, Excalidraw, Home Assistant
Observability OpenTelemetry Collector, Prometheus, Grafana, Alertmanager, Jaeger
MS SQL Server SQL Server 2019/2022 in Docker with custom collation
Apache Pinot Real-time OLAP โ€” schema inference, table creation, batch ingestion
Kafka Streaming Kafka compose, ksqlDB SQL scripts
Docker Networking Custom Dockerfiles, Node.js app networking
Kubernetes Intro slides, cheat sheet, config references