Docker and Kubernetes: Building and Scaling a Containerized Application Training Course
Docker is an open-source platform for automating the process of building, shipping and running applications inside containers. Kubernetes goes one step further by providing the tools needed to deploy and manage containerized applications at scale in a clustered environment.
In this instructor-led, live training (onsite or remote), participants will learn how to create and manage Docker containers, then deploy a sample application inside a container. Participants will also learn how to automate, scale, and manage their containerized applications within a Kubernetes cluster. Finally, the training goes on to more advanced topics, walking participants through the process of securing, scaling and monitoring a Kubernetes cluster.
By the end of this training, participants will be able to:
- Set up and run a Docker container.
- Deploy a containerized server and web application.
- Build and manage Docker images.
- Set up a Docker and Kubernetes cluster.
- Use Kubernetes to deploy and manage a clustered web application.
- Secure, scale and monitor a Kubernetes cluster.
Format of the course
- Part lecture, part discussion, exercises and heavy hands-on practice
Note:
- Apache Tomcat and a Java EE application will be used as our demo servers and applications for containerization. However, *these are subject to change*. If you would like to see a specific application or related tool or technique covered in this training, please contact us to arrange.
Course Outline
[Day 01]
Introduction
- Containers vs virtual machines
- Speed and performance
Overview of Docker architecture
- Docker and the Linux kernel
- Docker components (Docker client, Docker daemon, images, registry, containers)
Using Docker to run and manage containers
- Images, containers, volumes, networks
Brief overview of container orchestration
Installing Docker
Pulling an image from the internet
- Sample: Apache Tomcat
Running the container
Docker registries
- Public vs private
Creating and managing Dockerfiles
Building a Docker image
Deploying a web application
- Sample application: Java EE application server
How Docker containers communicate with each other
Configuring volumes and networks in Docker
- Linking and state
[Day 02]
Deep dive into container orchestration with Kubernetes
Overview of Kubernetes architecture
- Pods, labels/selectors, replication controllers, services, API
Installing a Kubernetes cluster
Creating Kubernetes pods, volumes and deployments
Grouping and organizing your cluster
Discovering and publishing services
Discovering and connecting to containers
Deploying a web application
- Handling application components
- Handling Database connections
Kubernetes security
- Authentication & authorization
Advanced networking
- Docker networking vs Kubernetes networking
Monitoring Kubernetes
- Cluster logging with Elasticsearch and fluentd
- Container level monitoring (cAdvisor UI, Influxdb, Prometheus)
[Day 03]
Scaling your Kubernetes cluster
Infrastructure for Kubernetes
- Provisioning, partitioning, networking
Building a high-availability cluster
- Load balancing and service discovery
Deploying a scalable application
- Horizontal pod autoscaling
- Database clustering in Kubernetes
Updating your application
- Releases in Kubernetes
Troubleshooting
Closing remarks
Requirements
- Familiarity with the Linux command line
- A basic understanding of virtualization concepts
- An understanding of networking concepts
- An understanding of how web applications work
Audience
- Software Developers
- Architects
- Deployment engineers
Open Training Courses require 5+ participants.
Docker and Kubernetes: Building and Scaling a Containerized Application Training Course - Booking
Docker and Kubernetes: Building and Scaling a Containerized Application Training Course - Enquiry
Docker and Kubernetes: Building and Scaling a Containerized Application - Consultancy Enquiry
Consultancy Enquiry
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.
Javier Caro Ruiz
Course - Docker and Kubernetes: Building and Scaling a Containerized Application
Upcoming Courses
Related Courses
Advanced Platform Engineering: Scaling with Microservices and Kubernetes
35 HoursThis instructor-led, live training in Brazil (online or onsite) is aimed at advanced-level platform engineers and DevOps professionals who wish to master scaling applications using microservices and Kubernetes.
By the end of this training, participants will be able to:
- Design and implement scalable microservices architectures.
- Deploy and manage applications on Kubernetes clusters.
- Utilize Helm charts for efficient service deployment.
- Monitor and maintain the health of microservices in production.
- Apply best practices for security and compliance in a Kubernetes environment.
Kubernetes Networking with Calico
14 HoursThis instructor-led, live training in Brazil (online or onsite) is aimed at engineers who wish to optimize networking for Kubernetes clusters.
By the end of this training, participants will be able to:
- Install and configure Calico.
- Understand how Calico differs from traditional overlay networks.
- Understand how Calico combines internet routing protocols with consensus-based data stores.
- Use Calico to create a container networking solution for Kubernetes clusters.
- Use Calico to provide network policy for Kubernetes.
Certified Kubernetes Administrator (CKA) - exam preparation
21 HoursThe Certified Kubernetes Administrator (CKA) program was created by The Linux Foundation and the Cloud Native Computing Foundation (CNCF).
Kubernetes is nowadys a leading platform used for containers orchestration.
NobleProg have been delivering Docker & Kubernetes training from 2015. With more than 360 successfully completed training projects, we became one of the best known training companies worldwide in field of containerization.
Since 2019 we are also helping our customers to confirm their performance in k8s environment by preparing them and encouraging to pass CKA and CKAD exams.
This instructor-led, live training (online or onsite) is aimed at System Administrators, Kubernetes users who wish to confirm their knowledge by passing CKA exam.
On the other hand, training is focused also on gaining practical experience in Kubernetes Administration, so we recommend taking part in it, even if you don't intend to take CKA exam.
Format of the Course
- Interactive lecture and discussion.
- Lots of exercises and practice.
- Hands-on implementation in a live-lab environment.
Course Customization Options
- To request a customized training for this course, please contact us to arrange.
- To learn more about CKA certification, please visit: https://training.linuxfoundation.org/certification/certified-kubernetes-administrator-cka
Certified Kubernetes Application Developer (CKAD) - exam preparation
21 HoursThe Certified Kubernetes Application Developer (CKAD) program has been developed by The Linux Foundation and the Cloud Native Computing Foundation (CNCF), the host of Kubernetes.
This instructor-led, live training (online or onsite) is aimed at Developers who wish to confirm their skills in design, build, configure, and expose cloud native applications for Kubernetes.
On the other hand, training is also focused on gaining practical experience in Kubernetes application development, so we recommend taking part in it, even if you don't intend to take CKAD exam.
NobleProg have been delivering Docker & Kubernetes training from 2015. With more than 360 successfully completed training projects, we became one of the best known training company worldwide in field of containerization. Since 2019 we are also helping our customers to confirm their performance in k8s environment by preparing them and encouraging to pass CKA and CKAD exams.
Format of the Course
- Interactive lecture and discussion.
- Lots of exercises and practice.
- Hands-on implementation in a live-lab environment.
Course Customization Options
- To request a customized training for this course, please contact us to arrange.
- To learn more about CKAD, please visit: https://training.linuxfoundation.org/certification/certified-kubernetes-application-developer-ckad/
Certified Kubernetes Security Specialist (CKS)
21 HoursThis instructor-led, live training in Brazil (online or onsite) is aimed at Kubernetes practitioners who wish to prepare for the CKS exam.
By the end of this training, participants will know how to secure Kubernetes environments and container-based applications throughout the different stages of an application's life cycle: build, deployment and runtime.
Docker and Kubernetes on AWS
21 HoursThis instructor-led, live training in (online or onsite) is aimed at engineers who wish to evaluate each of these services to make an informed decisions about which to deploy within their organization.
By the end of this training, participants will be able to:
- Set up a development environment that includes all needed libraries, packages and frameworks needed to start developing.
- Set up, configure and deploy a series of demo containers using a number of different approaches.
- Understand the architectural and design differences among different Docker/Kubernetes solutions within AWS.
- Automate the deployment of Docker containers.
- Set up a continuous integration and deployment pipeline.
- Integrate Docker and Kubernetes into an existing continuous integration system.
Docker, Kubernetes and OpenShift 3 for Administrators
35 HoursIn this instructor-led, live training in Brazil, participants will learn how to manage Red Hat OpenShift Container Platform.
By the end of this training, participants will be able to:
- Create, configure, manage, and troubleshoot OpenShift clusters.
- Deploy containerized applications on-premise, in public cloud or on a hosted cloud.
- Secure OpenShift Container Platform
- Monitor and gather metrics.
- Manage storage.
Docker (introducing Kubernetes)
14 HoursThe objective of this practical course is to provide all the tools that address the practical aspects of Docker and Kubernetes, in order that the participants can count on the necessary skills for the proper management of the program.
Docker and Kubernetes
21 HoursTraining objectives: Acquire theoretical and operational skills on Docker and Kubernetes.
Docker, Kubernetes and OpenShift 3 for Developers
35 HoursIn this instructor-led, live training in Brazil, participants will learn how to use OpenShift Container Platform to deploy containerized applications.
By the end of this training, participants will be able to:
- Create and configure an OpenShift setup.
- Quickly deploy applications on-premise, in public cloud or on a hosted cloud.
Deploying Kubernetes Applications with Helm
7 HoursThis instructor-led, live training in Brazil (online or onsite) is aimed at engineers who wish to use Helm to streamline the process of installing and managing Kubernetes applications.
By the end of this training, participants will be able to:
- Install and configure Helm.
- Create reproducible builds of Kubernetes applications.
- Share applications as Helm charts.
- Run third-party applications saved as Helm charts.
- Manage releases of Helm packages.
Introduction to Minikube and Kubernetes
21 HoursThis instructor-led, live training in Brazil (online or onsite) is aimed at beginner-level to intermediate-level software developers and DevOps professionals who wish to learn how to set up and manage a local Kubernetes environment using Minikube.
By the end of this training, participants will be able to:
- Install and configure Minikube on their local machine.
- Understand the basic concepts and architecture of Kubernetes.
- Deploy and manage containers using kubectl and the Minikube dashboard.
- Set up persistent storage and networking solutions for Kubernetes.
- Utilize Minikube for developing, testing, and debugging applications.
Minikube for Developers
14 HoursThis instructor-led, live training in Brazil (online or onsite) is aimed at intermediate-level developers and DevOps engineers who wish to use Minikube as a part of their development workflow.
By the end of this training, participants will be able to:
- Set up and manage a local Kubernetes environment using Minikube.
- Understand how to deploy, manage, and debug applications on Minikube.
- Integrate Minikube into their continuous integration and deployment pipelines.
- Optimize their development process using Minikube's advanced features.
- Apply best practices for local Kubernetes development.