Course Outline
[Day 01]
Introduction
- Containers compared to virtual machines
- Speed and performance considerations
Overview of Docker architecture
- Docker and the Linux kernel
- Key Docker components (Docker client, Docker daemon, images, registry, containers)
Utilizing Docker to execute and manage containers
- Images, containers, volumes, and networks
Brief introduction to container orchestration
Installing Docker
Retrieving an image from the internet
- Example: Apache Tomcat
Executing the container
Docker registries
- Public versus private registries
Creating and maintaining Dockerfiles
Constructing a Docker image
Deploying a web application
- Sample application: Java EE application server
Communication mechanisms between Docker containers
Configuring volumes and networks in Docker
- Linking and state management
[Day 02]
In-depth exploration of container orchestration using Kubernetes
Overview of Kubernetes architecture
- Pods, labels/selectors, replication controllers, services, and the API
Installing a Kubernetes cluster
Creating Kubernetes pods, volumes, and deployments
Organizing and grouping the cluster
Service discovery and publication
Container discovery and connectivity
Deploying a web application
- Managing application components
- Handling Database connections
Kubernetes security
- Authentication & authorization
Advanced networking
- Comparing Docker networking with Kubernetes networking
Monitoring Kubernetes
- Cluster logging using Elasticsearch and fluentd
- Container-level monitoring (cAdvisor UI, Influxdb, Prometheus)
[Day 03]
Scaling your Kubernetes cluster
Infrastructure requirements for Kubernetes
- Provisioning, partitioning, and networking
Constructing a high-availability cluster
- Load balancing and service discovery
Deploying a scalable application
- Horizontal pod autoscaling
- Database clustering within Kubernetes
Application updates
- Managing releases in Kubernetes
Troubleshooting
Closing remarks
Requirements
- Proficiency with the Linux command line
- Foundational knowledge of virtualization concepts
- Understanding of networking principles
- Comprehension of web application mechanics
Target 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.