Become a CI/CD Pro — Build real DevOps Pipelines
GitLab CI/CD is one of the most popular CI/CD platforms! More and more companies are adopting it. So, the need for Developers or DevOps engineers, who know how to build complete CI/CD pipelines on GitLab is increasing
So, you'll have built several CI/CD pipelines with real life examples & best practices!
While many GitLab courses teach you only the basics, we will dive into more advanced demos, like implementing dynamic versioning, using cache to speed up the pipeline execution or deploying to a K8s cluster.
As usual you can expect complex topics explained in a simple way, animations to help you understand the concepts better and lots of hands-on demos!
By the end of this course, you'll be able to

Confidently build CI/CD at your work

Set up self-managed GitLab Runners

Build and deploy containers with Docker Compose

Configure a CI/CD pipeline for a Monorepo Microservice

Configure a CI/CD pipeline for a Polyrepo Microservice

Setup a CI/CD pipeline with best practices

Deploy to a managed Kubernetes cluster

Build a Multi-Stage Pipeline
Course Curriculum
Your Path to become a CI/CD Pro!
Chapter 1:
Introduction to CI/CD and GitLab
.png)
1 - What is CI/CD
.png)
2 - Introduction to GitLab CI/CD
.png)
3 - How GitLab compares to other CI/CD platforms
Chapter 2:
Core Concepts of GitLab CI/CD
.png)
1 - Chapter Introduction
.png)
2 - Jobs: Basic Building Blocks of Pipeline
.png)
3 - Execute Pipeline
.png)
4 - Stages: Group jobs
.png)
5 - needs: Dependency between jobs
.png)
6 - script: Inline shell commands and executing shell script
.png)
7 - only: Specify when job should run
.png)
8 - Workflow Rules: Control Pipeline behavior
.png)
9 - Trigger Pipeline on Merge Request
.png)
10 - Predefined CI/CD Variables in GitLab
.png)
11 - Define Custom Variables
Chapter 3:
GitLab Architecture
.png)
1 - GitLab Runners for running the jobs
.png)
2 - GitLab Executors - Different Executor Types
.png)
3 - Job Execution Flow
.png)
4 - Docker Executor
.png)
5 - Specific Runners: Runner for specific project
.png)
6 - Demo Overview: Configure self-managed Runners
.png)
7 - Install & Register Local Runner on MacOS
.png)
8 - Install & Register Local Runner on Windows
.png)
9 - AWS Pre-Requisite
.png)
10 - Install & Register an AWS EC2 Runner
.png)
11 - Execute jobs on specific Runner (Tags)
.png)
12 - Add Docker Runner on EC2 Instance
.png)
13 - Group Runners: Runner for a GitLab Group
.png)
14 - Self-Managed GitLab Instance
.png)
15 - Note on GitLab Runner Versions Compatibility
.png)
16 - GitLab Architecture Recap
Chapter 4:
Build a real life CI/CD Pipeline for Node.js Application
.png)
1 - Demo Overview & Node.js Project Overview
.png)
2 - Run Unit Tests & Collect Test Reports
.png)
3 - Build Docker Image & Push to Private Registry
.png)
4 - Deploy to DEV Server
.png)
5 - GitLab Environments: Describe where code is deployed
.png)
6 - Deploy with Docker Compose
Chapter 5:
Optimize CI/CD Pipeline & Configure Multi-Stage Pipeline
.png)
1 - Section Overview
.png)
2 - Configure Dynamic Versioning for Docker Image
.png)
3 - Configure Caching to speed up Pipeline execution
.png)
4 - Testing in CI/CD & Configure Security Tests (SAST)
.png)
5 - Intro to Multi-Stage Deployments (Multi-Stage Demo - Part 1)
.png)
6 - Promote to Staging (Multi-Stage Demo - Part 2)
.png)
7 - Reuse pipeline configuration using extends (Multi-Stage Demo - Part 3)
.png)
8 - Promote to Production (Multi-Stage Demo - Part 4)
Chapter 6:
CI/CD MicroService Application (Mono and Polyrepo)
.png)
1 - What are Microservices?
.png)
2 - Monorepo vs Polyrepo
.png)
3 - Demo Overview
.png)
4 - Monorepo - Start services locally and get to know the Application
.png)
5 - Prepare Deployment Server (Monorepo Demo - Part 1)
.png)
6 - Build Micro Services (Monorepo Demo - Part 2)
.png)
7 - Deploy Micro Services (Monorepo Demo - Part 3)
.png)
8 - CI/CD pipeline for Polyrepo
.png)
9 - Extract common logic (Job Templates - Part 1)
.png)
10 - CI Templates - Library for all projects (Job Templates - Part 2)
Chapter 7:
Deploy Microservices to Kubernetes cluster
.png)
1 - Introduction & Demo Overview
.png)
1.1 - Pre-Requisite: Kubernetes Crash Course
.png)
2 - Create a K8s cluster on LKE
.png)
3 - Create GitLab User with restricted Permissions
.png)
4 - Deploy to Kubernetes Part 1
.png)
5 - Deploy to Kubernetes Part 2
.png)
6 - Wrap Up & Delete all cloud resources


Who this course is for:

Software Developers

DevOps Engineers

System Administrators

Especially for people, who have basic IT knowledge and
-
want to learn how to set up real life pipelines
-
want to learn how to build a CI/CD pipeline with GitLab platform
Pre-Requisites:


Linux Basics (Working with the terminal)

Basics of Git (cloning a repository, commit, push, pull)

Only for the last chapter/demo project, where we deploy to K8s:
Kubernetes Crash Course
.png)
What you’ll learn - GitLab Concepts

Pipelines, Jobs, Stages

GitLab Runners & Executors

Regular & Secret Variables

GitLab's built-in Docker registry

Workflow Rules

Environments

Everything about Caching

GitLab's Job Templates

Configure Job Artifacts (test report, passing files and env vars)

Reuse pipeline configuration by writing own job ci-templates library

Conditionals

Learn Best Practices & industry insights!
What you’ll learn - Real Life Demos & CI/CD Concepts

Pipeline: Test, Build, Push & Deploy Docker Containers

Configure CI/CD pipelines for Monorepo & Polyrepo Microservices Application

Deploy with Docker Compose

Promote to staging and production

Configure dynamic versioning

Configure local & remote GitLab Runners

Configure caching to speed up job execution

Deploy to a K8s cluster from CI/CD pipeline

Configure security tests (SAST)

Learn Best Practices & industry insights!
Build production-ready DevOps Pipelines with
Docker, Kubernetes & Microservices

Build, Push and deploy Docker containers using Docker Compose

Configure a CI/CD pipeline for Microservices application - both with Monorepo and Polyrepo!

Learn how to deploy to a Kubernetes cluster from the pipeline
Millions of students love the way I explain complex concepts in an easy way!
No rushing through topics or shallow explanations
Instead I explain every concept behind, so you'll have a deep understanding and big picture. You can apply the skills right at your work!

Nana Janashia
Your Instructor
Hi, my name is Nana. Co-Founder of TechWorld with Nana
I've taught millions of people about Kubernetes and how to become professional DevOps engineers through our DevOps and DevSecOps Bootcamp, Youtube channel and online courses.
Why learn from me

Millions of students love the way how I explain complex concepts in an easy way, so that everyone can understand it

Learn from an AWS Container Hero and Docker Captain
