Get in Touch

Course Outline

Introduction

  • Introduction to advanced Docker concepts and workflows
  • Review of containerization principles and use cases
  • Docker terminology and core components
  • Overview of the course objectives and hands-on environment

Overview of Docker Features and Architecture

  • Docker Engine and its components
  • Docker client, daemon, images, containers, and registries
  • Docker architecture and container lifecycle
  • Docker Hub and private registries
  • Docker CLI fundamentals for advanced users
  • Managing Docker resources and configurations

Setting up Docker

  • Installing Docker Community Edition
  • Configuring the Docker environment
  • Verifying the Docker installation
  • Configuring Docker for development and testing
  • Managing Docker configuration and storage
  • Introduction to Docker environment troubleshooting

Building Your Own Docker Images

  • Understanding Docker images and layers
  • Writing effective Dockerfiles
  • Dockerfile instructions and best practices
  • Managing build context
  • Building and tagging images
  • Using .dockerignore
  • Optimizing image size and build performance
  • Managing image versions and tags
  • Multi-stage Docker builds
  • Publishing images to a container registry

Running Multi-Container Docker Applications with Docker Compose

  • Introduction to Docker Compose
  • Defining services with Compose files
  • Configuring networks and volumes
  • Managing environment variables
  • Service dependencies and startup order
  • Running and scaling multiple services
  • Building application images with Compose
  • Managing application configuration
  • Debugging multi-container applications
  • Compose best practices

The Challenges of Deploying Many Docker Applications

  • Managing containers across multiple hosts
  • Application scaling and availability
  • Service discovery
  • Load balancing
  • Configuration and secret management
  • Persistent storage challenges
  • Monitoring and logging at scale
  • Rolling updates and application deployment
  • Recovery from container and host failures

How Container Orchestration Helps You Maintain Control

  • Introduction to container orchestration
  • Benefits and limitations of orchestration
  • Comparing Docker Swarm, Kubernetes, and other solutions
  • Scheduling and workload management
  • Service discovery and networking
  • Scaling and self-healing applications
  • Rolling deployments and rollbacks
  • Resource management and workload isolation
  • Selecting an appropriate orchestration platform

Kubernetes in Action

  • Kubernetes architecture and core components
  • Pods, nodes, and clusters
  • Deployments and ReplicaSets
  • Services and service discovery
  • ConfigMaps and Secrets
  • Namespaces and resource organization
  • Scaling applications
  • Rolling updates and rollbacks
  • Kubernetes networking fundamentals
  • Persistent storage
  • Health checks and application resilience
  • Deploying Docker applications to Kubernetes
  • Troubleshooting Kubernetes workloads

Advanced Docker Networking

  • Docker networking architecture
  • Bridge, host, overlay, and other network drivers
  • Container-to-container communication
  • Communication between containers and external systems
  • Custom Docker networks
  • Network isolation
  • Service discovery
  • Port publishing and exposure
  • Networking in multi-host environments
  • Troubleshooting Docker networking

Docker Security

  • Docker security fundamentals
  • Container isolation and security boundaries
  • Running containers with appropriate privileges
  • Managing users and permissions inside containers
  • Linux capabilities and security controls
  • Securing Docker images
  • Image vulnerability scanning
  • Managing secrets securely
  • Securing Docker registries
  • Network security and isolation
  • Docker daemon security
  • Container security best practices

Setting up a Continuous Integration Workflow for Docker Applications

  • Introduction to CI for containerized applications
  • Building Docker images automatically
  • 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 Applications into an Existing Workflow

  • Integrating Docker with existing 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

Container and Orchestration Best Practices

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

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
  • Review of image creation and container management
  • Review of multi-container application deployment
  • Review of orchestration concepts and Kubernetes
  • Review of Docker networking and security
  • Review of CI/CD integration
  • Containerization and orchestration best practices
  • Final hands-on exercise
  • Questions and discussion

Requirements

  • Prior practical experience with Docker containers.

Target Audience

  • Developers
  • DevOps engineers
  • System administrators
 14 Hours

Number of participants


Price per participant

Testimonials (7)

Upcoming Courses

Related Categories