Get in Touch
 Duration 14 hours

Course Outline

Introduction

  • Overview of advanced Docker concepts and workflows
  • Refresher on containerization principles and real-world use cases
  • Key Docker terminology and core architectural components
  • Course objectives and introduction to the hands-on environment

Docker Features and Architecture Overview

  • The Docker Engine and its constituent parts
  • Understanding the client, daemon, images, containers, and registries
  • Docker architecture and the container lifecycle
  • Docker Hub and the management of private registries
  • Advanced CLI fundamentals for Docker users
  • Techniques for managing Docker resources and configurations

Docker Setup

  • Installation of Docker Community Edition
  • Configuring the Docker operating environment
  • Verification of Docker installation integrity
  • Optimizing Docker for development and testing scenarios
  • Management of Docker configuration files and storage
  • Basics of troubleshooting Docker environments

Creating Custom Docker Images

  • Understanding Docker image structure and layers
  • Authoring effective Dockerfiles
  • Best practices for Dockerfile instructions
  • Managing the build context efficiently
  • Building and tagging images
  • Utilizing .dockerignore
  • Optimizing image size and build performance
  • Managing image versioning and tagging strategies
  • Implementing multi-stage Docker builds
  • Publishing images to container registries

Multi-Container Applications with Docker Compose

  • Introduction to Docker Compose
  • Defining services via Compose files
  • Configuring networks and volumes
  • Managing environment variables
  • Handling service dependencies and startup sequences
  • Running and scaling multiple services
  • Building application images using Compose
  • Managing application configuration
  • Debugging multi-container setups
  • Best practices for Docker Compose

Challenges in Deploying Numerous Docker Applications

  • Managing containers distributed across multiple hosts
  • Application scaling and ensuring high availability
  • Implementing service discovery
  • Load balancing strategies
  • Managing configurations and secrets
  • Addressing persistent storage challenges
  • Scaling monitoring and logging
  • Executing rolling updates and application deployments
  • Recovering from container and host failures

Maintaining Control with Container Orchestration

  • Introduction to container orchestration concepts
  • Benefits and limitations of orchestration platforms
  • Comparison of Docker Swarm, Kubernetes, and other solutions
  • Scheduling and workload management
  • Service discovery and networking
  • Scaling and self-healing application capabilities
  • Rolling deployments and rollback mechanisms
  • Resource management and workload isolation
  • Criteria for selecting an appropriate orchestration platform

Kubernetes in Practice

  • Kubernetes architecture and core components
  • Understanding Pods, nodes, and clusters
  • Working with Deployments and ReplicaSets
  • Services and service discovery mechanisms
  • Using ConfigMaps and Secrets
  • Namespaces and organizing resources
  • Scaling applications
  • Performing rolling updates and rollbacks
  • Kubernetes networking fundamentals
  • Managing persistent storage
  • Health checks and ensuring application resilience
  • Deploying Docker applications onto Kubernetes
  • Troubleshooting Kubernetes workloads

Advanced Docker Networking

  • Docker networking architecture
  • Bridge, host, overlay, and other network drivers
  • Facilitating container-to-container communication
  • Enabling communication between containers and external systems
  • Creating custom Docker networks
  • Implementing network isolation
  • Service discovery mechanisms
  • Port publishing and exposure
  • Networking in multi-host environments
  • Troubleshooting Docker networking issues

Docker Security

  • Foundations of Docker security
  • Container isolation and security boundaries
  • Running containers with appropriate privilege levels
  • Managing users and permissions within containers
  • Linux capabilities and security controls
  • Securing Docker images
  • Performing image vulnerability scanning
  • Secure management of secrets
  • Protecting Docker registries
  • Network security and isolation strategies
  • Securing the Docker daemon
  • Best practices for container security

Continuous Integration for Docker Applications

  • Introduction to CI for containerized applications
  • Automating the building of Docker images
  • Automated testing of Docker images and containers
  • Image tagging and version management
  • Integrating source control with Docker builds
  • Automated image vulnerability scanning
  • Publishing images to registries
  • Managing build artifacts
  • Implementing automated quality checks
  • Designing a repeatable Docker CI pipeline

Integrating Docker into Existing Workflows

  • Integrating Docker with established development workflows
  • Containerizing existing applications
  • Integrating Docker with CI/CD platforms
  • Managing development, testing, staging, and production environments
  • Automated deployment strategies
  • Configuration management across environments
  • Registry integration
  • Deployment approvals and release management
  • Monitoring application deployments
  • Maintaining consistency across environments

Best Practices for Containers and Orchestration

  • Designing maintainable Docker images
  • Optimizing container startup and performance
  • Container lifecycle management
  • Effective resource allocation
  • Logging and monitoring strategies
  • Configuration and secret management
  • Achieving high availability and fault tolerance
  • Scaling containerized applications
  • Secure container deployment
  • Versioning and release strategies
  • Best practices for orchestration architecture

Troubleshooting

  • Diagnosing container startup failures
  • Investigating application and container logs
  • Inspecting containers and images
  • Troubleshooting networking issues
  • Resolving storage and volume problems
  • Diagnosing image build failures
  • Troubleshooting Docker Compose applications
  • Investigating resource and performance issues
  • Kubernetes troubleshooting fundamentals
  • Practical troubleshooting exercises

Summary and Conclusion

  • Review of key Docker concepts
  • Recap of image creation and container management
  • Summary of multi-container application deployment
  • Review of orchestration concepts and Kubernetes
  • Overview of Docker networking and security
  • Review of CI/CD integration
  • Best practices for containerization and orchestration
  • Final hands-on exercise
  • Q&A and discussion

Requirements

  • Prior experience with Docker containers is required.

Audience

  • Developers
  • DevOps engineers
  • System administrators

Number of participants


Price per participant

Testimonials (7)

Upcoming Courses

Related Categories