Deploying Your Applications in production with Docker and Kubernetes
3 days - Beginner
Gain practical expertise in containerizing and deploying applications with Docker and Kubernetes. This course offers hands-on experience in building, tuning, and monitoring applications within the Kubernetes ecosystem, following best practices for modern, scalable software.
Training details
Description
This training is designed for developers who want to create or tune applications using Docker, for optimal integration into the Kubernetes ecosystem. You will gain a deep understanding of how the Docker daemon works and the main commands. You will explore the various Kubernetes resources needed to deploy applications. Through practical exercises, you will master how to package your applications in Docker containers before publishing them in a private registry. You'll learn how to deploy them in a Kubernetes environment, while following the 12-factor application patterns, to fully exploit the power of the orchestrator. Finally, you will be guided in learning how to monitor your applications and manage their complete lifecycle.
Objectives
- Building a Docker image
- Publishing a Docker image to a repository
- Managing a Docker Container
- Tuning an application for the Kubernetes environment
- Setting up an application deployment in Kubernetes
- Application monitoring
- Exploring advanced Kubernetes features
Target Audience
- Developer
- Architect
Prerequisites
Laptop with at least 8Gb of memory, IDE & linux installed whith basic practice of software programming. Strong understanding of the Linux ecosystem and web applications. During the training, you can use the programming language that you usually use.
Pedagogical method
Learning by doing. Practical training, aimed at acquiring know-how, based on a practical case as well as exchanges and feedback from the trainer's practical experience. An Event Storming session will be offered to participants to appropriate the business problems, and follow an implementation (in pairs or all together).
- Proportion of presentations: 60%
- Proportion of practical cases: 30%
- Proportion of experience sharing: 10%
Evaluation and follow-up mode
The evaluation of the acquired skills takes place throughout the session through workshops and practical implementations. A hot evaluation of the satisfaction of the trainees is systematically carried out at the end of the session and a training certificate is issued to the participants mentioning the objectives of the training, the nature, the program and the duration of the training action as well as the formalization of the acquired skills.
Program
Day 1 : Introduction to Docker and Kubernetes
- Getting started with Docker
- Era before Docker
- Docker Exploration: What Is It?
- Docker Concepts & Architecture
- Practical application with Docker
- Exploring Docker images
- Getting started with Docker
- Understanding volumes
- Creating Images and Interacting with Registries
- Lab: Using Docker Compose
- Kubernetes Introduction
- Kubernetes history and origins
- Lab: Getting started with the kubectl
Day 2 : Deploying and managing applications in Kubernetes
- Kubernetes Fundamentals
- Exploring key Kubernetes concepts
- Launching applications in Kubernetes
- Lab: Secrets and Configuration Management
- Understand Liveness and Availability Probes
- HTTP route management
- Resource Optimization
- Lab: Application Monitoring
- Lab: Log Management
- Managing Stateful Containers in Kubernetes
- Exploring volumes, PV and PVC
- Understanding statefulsets
- Lab: CRD and operators
Day 3: Continuous Integration & Deployment with Kubernetes
- Continuous Delivery with Kubernetes
- Continuous Integration use cases
- Continuous Deployment use cases
- Conclusion & Takeaways
Contact us to discuss your project
Send us an email and we will get back to you as soon as possible[email protected]