Skip to content
Tech Trivandrum

Docker and Containerization

Learn to package, ship and run applications in containers, from your first image to multi-container applications with Docker Compose.

ContainersBeginner

About this course

This practical crash course introduces Docker and guides learners through image creation, container management, networking, persistent storage, multi-container applications, Docker Compose, and container registries. The course concludes with an integrated application deployment project.

What you will learn

  • Install and operate Docker on a Linux host.
  • Build, run, inspect, and troubleshoot containers and images.
  • Configure container networking and persistent storage.
  • Deploy multi-container applications using Docker Compose.
  • Push images to Docker Hub and retrieve images from private registries.
  • Complete an end-to-end containerized web application deployment.

Curriculum

  1. 01Introduction to DockerIdentify Docker components and explain the container lifecycle
    • Containers and containerization concepts
    • Virtual machines vs. containers
    • Docker architecture: Engine, daemon, CLI and Docker Hub
    • Docker images vs. containers; practical use cases
  2. 02Docker Installation and ConfigurationInstall Docker and successfully run a test container
    • Install Docker Engine and Compose plugin on Ubuntu/Linux
    • Docker Desktop overview
    • Manage Docker service; verify installation
    • Run the hello-world container; Docker permissions
  3. 03Essential Docker CommandsOperate an Nginx container and publish it on a host port
    • Find, pull, and list images
    • Create, run, stop, restart, and remove containers
    • Interactive/detached modes; port mapping; environment variables
    • Inspect objects and clean up unused resources
  4. 04Docker Images and DockerfileBuild a custom web server image from a Dockerfile
    • Image layers and build cache
    • Dockerfile: FROM, RUN, COPY, WORKDIR, CMD, ENTRYPOINT, ENV and EXPOSE
    • Build and tag custom images; .dockerignore
    • Introduction to multi-stage builds
  5. 05Container Management and DebuggingDiagnose a deliberately misconfigured container
    • Container lifecycle and restart policies
    • docker logs, exec, inspect, stats, and top
    • Troubleshoot exit codes, failed startups, and port conflicts
    • Basic health checks
  6. 06Docker NetworkingConnect two containers on a custom network.
    • Default bridge, host, and none networks
    • Create user-defined bridge networks
    • Container name resolution and inter-container connectivity
    • Port publishing and basic network troubleshooting
  7. 07Docker Storage and VolumesRun MySQL with persistent storage
    • Container writable layers and persistence
    • Named volumes vs. bind mounts
    • Mount and inspect Docker volumes
    • Persist, back up, and restore database data
  8. 08Running Multiple ContainersConnect a simple web container to a MySQL container
    • Multi-container application architecture
    • Application-to-database communication
    • Service environment variables and shared networks
    • Run and test web and database containers
  9. 09Docker ComposeDeploy the application and database using Docker Compose
    • Compose fundamentals and YAML structure
    • Define services, networks, volumes, ports and environment variables
    • Use compose.yaml and .env files
    • docker compose up, down, logs, ps, exec, and build
  10. 10Containerizing ApplicationsContainerize and test one small application
    • Introduction to application containerization
    • Identify application dependencies
    • Create a basic Dockerfile for a simple Flask or PHP app
    • Build, run, and test the application container
  11. 11Docker Registry and Image ManagementPush an image to Docker Hub and pull it from a private repository
    • Docker Hub repositories and image tags
    • Authenticate, tag, push, and pull images
    • Access private repositories and private registry images
    • Brief introduction to cloud container registries
  12. 12Complete Project – Hands-onDeliver a working multi-container web application using Docker Compose
    • Prepare a Docker host and a simple web application
    • Build an application image and configure MySQL
    • Create Compose services, networks, and persistent database volume
    • Deploy, test, troubleshoot, push image, and redeploy

Prerequisites

  • Basic Linux command-line knowledge and familiarity with installing software.
  • Basic understanding of networking concepts, ports, and applications.

More courses

Cloud ComputingBeginner

AWS Practical Course

A beginner-friendly, practical AWS program focused on building the foundation and hands-on confidence required to work with AWS in real-world IT environments.

View course
Cloud ComputingBeginner

Oracle Cloud Infrastructure (OCI)

Get productive on Oracle Cloud Infrastructure, from tenancy setup and networking to compute, storage and architecture fundamentals.

View course
Cloud ComputingBeginner

Microsoft Azure Fundamentals

Understand how Microsoft Azure is organised and learn to work with its core compute, storage, networking and identity services.

View course
Docker and Containerization | Tech Trivandrum