Docker Compose

Course Description

This course is your comprehensive guide to mastering Docker Compose, the essential tool for defining and running multi-container Docker applications. You'll start with the fundamentals, understanding the motivation behind Compose and its core architecture. Through a series of hands-on labs and code examples, you will learn to write clean and effective docker-compose.yml files to manage services, configure networking, and handle data persistence with volumes. The course culminates in composing and launching several real-world, multi-service applications, including Java Spring and Python Flask stacks, streamlining your entire development workflow.

Who is this course for

This course is designed for individuals who are comfortable with single-container Docker operations and are ready to manage complex, multi-service applications. It is perfect for:

  • Software Developers: Who work with microservices or applications that have separate database or caching layers.

  • DevOps Engineers: Responsible for creating consistent development, testing, and staging environments.

  • System Administrators: Who need to deploy and manage applications composed of multiple interconnected containers.

Course Objectives

Upon successful completion of this course, you will be able to:

  • Master Docker Compose Fundamentals: Explain the purpose and architecture of Docker Compose and write your own docker-compose.yml files.

  • Orchestrate Multi-Container Services: Define, run, and manage the lifecycle of complex applications with multiple services.

  • Implement Advanced Configurations: Configure health checks, set resource constraints, and manage application secrets and configurations.

  • Control Networking and Volumes: Define custom networks for inter-container communication and manage persistent data using volumes within Compose.

  • Deploy Real-World Applications: Assemble and launch complete application stacks, such as a Python web app with a database and a Java Spring application.

Prerequisites

To succeed in this course, you must have:

  1. Solid Docker Proficiency: You should be comfortable building images with Dockerfiles and managing single containers using docker commands.

  2. Command-Line Proficiency: You must be proficient in using a terminal or command prompt.

  3. A Working Docker Environment: You need Docker and Docker Compose installed and running on your system to complete the hands-on labs.

  4. Basic YAML Familiarity (Helpful): While not required, a basic understanding of YAML syntax will be beneficial.

Course outline

Section 1: Docker Compose Fundamentals

  1. The Motivation for Docker Compose

  2. Introduction to Docker Compose

  3. Docker Compose Architecture and File Structure

  4. Hands-on Lab: Docker Compose Installation

  5. Code Example: Defining Services in Docker Compose

  6. Hands-on Lab: Docker Compose Basic Operation Commands

Section 2: Advanced Docker Compose Configuration

  1. Hands-on Lab: Implementing Health Checks in Compose

  2. Hands-on Lab: Setting Runtime Constraints on Resources

  3. Hands-on Lab: Composing a WordPress site with a MariaDB Database

Section 3: Networking in Docker Compose

  1. Introduction to networking in Docker compose

  2. CODE Configuring network in docker compose

Section 4: Volume in Docker Compose

  1. Introduction to Docker Volumes in Compose

  2. CODE Declaring types of Volumes in Docker Compose

  3. CODE Docker Compose Volume Configuration Options

  4. HOL Multi-container docker volume in docker compose Web Application monitoring with Log Monitoring

Section 5: Composing Apps

  1. HOL Composing Java Spring mysql Goldenwaste App

  2. HOL Composing Todo-list Python Flask App with MySQL and Nginx

  3. HOL Composing Python Flask Bootstrap Weather Utility App

Testimonials


subscribe to our newsletter

Product updates, news and promotions. No spam ever.

Copyright © 2024 CloudTraining

Terms

Privacy Policy

subscribe to our newsletter

Product updates, news and promotions. No spam ever.

Copyright © 2024 CloudTraining

Terms

Privacy Policy

subscribe to our newsletter

Product updates, news and promotions. No spam ever.

Copyright © 2024 CloudTraining

Terms

Privacy Policy