DevOps Toolkit: Git, Docker, Kubernetes, and CI/CD
- Created By raju2006
- Last Updated December 11th, 2023
- Overview
- Prerequisite
- Audience
- Audience
- Curriculum
Description:
Unlock the World of DevOps: Master the Fundamentals and Patterns for Application Development, Building, and Deployment. Dive into Virtual Machines, Containers, Git, CI/CD, Microservice Architecture, and More with Hands-On Labs in this Comprehensive Course
Course Code/Duration:
BDT170 / 3 Days
Learning Objectives:
After this course, you will be able to:
- Understand the steps involved in DevOps methodology
- Learn DevOps tools like Git, Docker, Jenkins, and Kubernetes
- Maintain versions and source code using Git
- Use Docker in your daily developer and/or sysadmin roles
- Lead your team into the future with the latest Docker container skills!
- Deploy apps to Kubernetes
- Make Kubernetes YAML manifests and deploy using infrastructure-as-code method
- Understand how to build microservices with Docker and Kubernetes
- Design continuous integration pipelines using Jenkins
- Basic Understanding of Linux/Unix and some basic programming with Python, Java, JavaScript, C#, etc. is assumed.
- This course is designed for anyone interested to get started with the domain of DevOps including Data Engineers, DevOps Engineer, Release Engineer, Database Administrator, Infrastructure Engineers, Software Engineers, or System Administrator.
- This course is designed for anyone interested to get started with the domain of DevOps including Data Engineers, DevOps Engineer, Release Engineer, Database Administrator, Infrastructure Engineers, Software Engineers, or System Administrator.
Course Outline:
Understand principal concepts and practices in DevOps methodology.
DevOps Overview and Tools
Principles of continuous software development, integration, and deployment
DevOps Goals
Automation
Version Control
Testing
Deployment
Cloud
Introduction to Tools (e.g., Git, Docker, Jenkins)
Repositories, artifacts
Version control using Git
Importance and need of version control
Version control options
Git Overview
Understand Git commands
Exercise: Managing Source Code and Versions with Git
Docker
Docker Overview
Docker Desktop
Docker Commands
Understand Dockerfile
Building Docker Containers
How to use Docker, Compose and Kubernetes on your machine for better software building and testing.
Hand’s-on with best practices for making Dockerfiles and Compose files
Kubernetes
Introduction to Kubernetes
Role: container/ service orchestration
Architecture, clusters
Automated deployment and operations of containerized applications
Kubernetes networking
CNI
Networks policies, workflow
Examples: Flannel, Calico
Automation based on helm charts (optional)
Container/service image (registry and distribution)
Introduction to service meshes
Fundamentals: definition, drivers and use cases
Example: Envoy and Istio
Continuous Integration/Continuous Deployment (CI/CD)
Introduction to CI/CD concepts
Continuous Integration Pipelines
Creating Pipelines
Automating Deployments
Exercise: Creating CI/CD Pipelines with Jenkins
Use the practices on Cloud – GCP
References and Next steps
Training material provided:
Hands-on Lab: Instructions will be provided to install Docker, & Kubernetes on personal machine prior to the start of class.