Course Outline
[Day 01]
Introduction
- Comparison of containers and virtual machines
- Speed and performance considerations
Overview of Docker architecture
- Docker and the Linux kernel interaction
- Core Docker components (client, daemon, images, registry, containers)
Utilizing Docker for container execution and management
- Managing images, containers, volumes, and networks
Brief introduction to container orchestration
Installing Docker
Retrieving images from the internet
- Sample: Apache Tomcat
Executing the container
Docker registries
- Public versus private registries
Creating and managing Dockerfiles
Building a Docker image
Deploying a web application
- Sample application: Java EE application server
Inter-container communication in Docker
Configuring volumes and networks in Docker
- Linking and state management
[Day 02]
In-depth exploration of container orchestration with Kubernetes
Overview of Kubernetes architecture
- Pods, labels/selectors, replication controllers, services, and API
Installing a Kubernetes cluster
Creating Kubernetes pods, volumes, and deployments
Grouping and organizing cluster resources
Service discovery and publication
Container discovery and connectivity
Deploying a web application
- Managing application components
- Handling database connections
Kubernetes security
- Authentication and authorization
Advanced networking
- Comparison of Docker and Kubernetes networking
Monitoring Kubernetes
- Cluster logging using Elasticsearch and fluentd
- Container-level monitoring (cAdvisor UI, Influxdb, Prometheus)
[Day 03]
Scaling your Kubernetes cluster
Kubernetes infrastructure
- Provisioning, partitioning, and networking
Constructing a high-availability cluster
- Load balancing and service discovery
Deploying a scalable application
- Horizontal pod autoscaling
- Database clustering in Kubernetes
Updating applications
- Managing releases in Kubernetes
Troubleshooting
Closing remarks
Requirements
- Proficiency with the Linux command line
- A foundational understanding of virtualization concepts
- Knowledge of networking principles
- An understanding of web application functionality
Audience
- Software Developers
- Architects
- Deployment Engineers
Testimonials (7)
Hands on exercises
Tobias - Elisa Polystar
Course - Docker and Kubernetes: Building and Scaling a Containerized Application
The trainer was very knowledgeable and pedagogical! Five thumbs! Answered all questions and helped with exercises that I have not feel any stress to be late with them :-)
Alexandre - Elisa Polystar
Course - Docker and Kubernetes: Building and Scaling a Containerized Application
The teacher has a very knowledge about the topic, and he ask us about any new topic or understand and learn. The exercises were very useful. thanks.
Guillermo Saenz - Elisa Polystar
Course - Docker and Kubernetes: Building and Scaling a Containerized Application
The trainer's way to explain the subject and who to make the concept very simple.
Faten AlDawish - TAMKEEN TECHNOLOGIES COMPANY
Course - Docker and Kubernetes: Building and Scaling a Containerized Application
Step by step learning of the material
Waruzjan Shahbazian - SmartDocuments Nederland BV
Course - Docker and Kubernetes: Building and Scaling a Containerized Application
I enjoyed the one-on-one training. I could greatly influence the topics, speed, pauses, etc. Great.
Andre Vink
Course - Docker and Kubernetes: Building and Scaling a Containerized Application
That it was well structured and I managed to fill some gaps in my knowledge.