top of page
31.png
Group 12.png
Group 13.png

Complete GitLab CI/CD Course

with Docker | Kubernetes | Microservices

Learn how to build production-ready CI/CD pipelines in one comprehensive and practical course!

Become a GitLab 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

briefcase-line.png

Confidently use GitLab CI/CD at your work

admin-line.png

Set up self-managed GitLab Runners

docker-icon.png

Build and deploy containers with Docker Compose

image 128.png

Configure a CI/CD pipeline for a Monorepo Microservice

image 128.png

Configure a CI/CD pipeline for a Polyrepo Microservice

lightbulb.png

Setup a CI/CD pipeline with best practices

kubernetes logo.png

Deploy to a managed Kubernetes cluster

dashboard-line.png

Build a Multi-Stage Pipeline

Course Curriculum

Your Path to become a CI/CD Pro!

Chapter 1:

Introduction to CI/CD and GitLab

Vector (4).png

1 - What is CI/CD

Vector (4).png

2 - Introduction to GitLab CI/CD

Vector (4).png

3 - How GitLab compares to other CI/CD platforms

Chapter 2:

Core Concepts of GitLab CI/CD

Vector (4).png

1 - Chapter Introduction

Vector (4).png

2 - Jobs: Basic Building Blocks of Pipeline

Vector (4).png

3 - Execute Pipeline

Vector (4).png

4 - Stages: Group jobs

Vector (4).png

5 - needs: Dependency between jobs

Vector (4).png

6 - script: Inline shell commands and executing shell script

Vector (4).png

7 - only: Specify when job should run

Vector (4).png

8 - Workflow Rules: Control Pipeline behavior

Vector (4).png

9 - Trigger Pipeline on Merge Request

Vector (4).png

10 - Predefined CI/CD Variables in GitLab

Vector (4).png

11 - Define Custom Variables

Chapter 3:

GitLab Architecture

Vector (4).png

1 - GitLab Runners for running the jobs

Vector (4).png

2 - GitLab Executors - Different Executor Types

Vector (4).png

3 - Job Execution Flow

Vector (4).png

4 - Docker Executor

Vector (4).png

5 - Specific Runners: Runner for specific project

Vector (4).png

6 - Demo Overview: Configure self-managed Runners

Vector (4).png

7 - Install & Register Local Runner on MacOS

Vector (4).png

8 - Install & Register Local Runner on Windows

Vector (4).png

9 - AWS Pre-Requisite

Vector (4).png

10 - Install & Register an AWS EC2 Runner

Vector (4).png

11 - Execute jobs on specific Runner (Tags)

Vector (4).png

12 - Add Docker Runner on EC2 Instance

Vector (4).png

13 - Group Runners: Runner for a GitLab Group

Vector (4).png

14 - Self-Managed GitLab Instance

Vector (4).png

15 - Note on GitLab Runner Versions Compatibility

Vector (4).png

16 - GitLab Architecture Recap

Chapter 4:

Build a real life CI/CD Pipeline for Node.js Application

Vector (4).png

1 - Demo Overview & Node.js Project Overview

Vector (4).png

2 - Run Unit Tests & Collect Test Reports

Vector (4).png

3 - Build Docker Image & Push to Private Registry

Vector (4).png

4 - Deploy to DEV Server

Vector (4).png

5 - GitLab Environments: Describe where code is deployed

Vector (4).png

6 - Deploy with Docker Compose

Chapter 5:

Optimize CI/CD Pipeline & Configure Multi-Stage Pipeline

Vector (4).png

1 - Section Overview

Vector (4).png

2 - Configure Dynamic Versioning for Docker Image

Vector (4).png

3 - Configure Caching to speed up Pipeline execution

Vector (4).png

4 - Testing in CI/CD & Configure Security Tests (SAST)

Vector (4).png

5 - Intro to Multi-Stage Deployments (Multi-Stage Demo - Part 1)

Vector (4).png

6 - Promote to Staging (Multi-Stage Demo - Part 2)

Vector (4).png

7 - Reuse pipeline configuration using extends (Multi-Stage Demo - Part 3)

Vector (4).png

8 - Promote to Production (Multi-Stage Demo - Part 4)

Chapter 6:

CI/CD MicroService Application (Mono and Polyrepo)

Vector (4).png

1 - What are Microservices?

Vector (4).png

2 - Monorepo vs Polyrepo

Vector (4).png

3 - Demo Overview

Vector (4).png

4 - Monorepo - Start services locally and get to know the Application

Vector (4).png

5 - Prepare Deployment Server (Monorepo Demo - Part 1)

Vector (4).png

6 - Build Micro Services (Monorepo Demo - Part 2)

Vector (4).png

7 - Deploy Micro Services (Monorepo Demo - Part 3)

Vector (4).png

8 - CI/CD pipeline for Polyrepo

Vector (4).png

9 - Extract common logic (Job Templates - Part 1)

Vector (4).png

10 - CI Templates - Library for all projects (Job Templates - Part 2)

Chapter 7:

Deploy Microservices to Kubernetes cluster

Vector (4).png

1 - Introduction & Demo Overview

Vector (4).png

1.1 - Pre-Requisite: Kubernetes Crash Course

Vector (4).png

2 - Create a K8s cluster on LKE

Vector (4).png

3 - Create GitLab User with restricted Permissions

Vector (4).png

4 - Deploy to Kubernetes Part 1

Vector (4).png

5 - Deploy to Kubernetes Part 2

Vector (4).png

6 - Wrap Up & Delete all cloud resources

bg.png
Vector.png

Who this course is for:

CheckCircle.png

Software Developers

CheckCircle.png

DevOps Engineers

CheckCircle.png

System Administrators

CheckCircle.png

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-Requisities:

CheckCircle.png
CheckCircle.png

Linux Basics (Working with the terminal)

CheckCircle.png

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

CheckCircle.png

Only for the last chapter/demo project, where we deploy to K8s:
Kubernetes Crash Course

Vector (1).png

Course Includes

BookBookmark.png

66 Lectures

Video.png

10+ Hours of Video

Rocket.png

Hands-On Demos

CC.png

English Subtitles

Icons_people-24.png

Exclusive Community

HandHeart.png

24/7 Live Support

Certificate.png

Course Certificate

$275

Multiple timezones covered to ensure fast help and you don't get stuck for too long

*Price excludes ant applicable VAT taxes

What you’ll learn - Gitlab Concepts

CheckCircle.png

Pipelines, Jobs, Stages

CheckCircle.png

GitLab Runners & Executors

CheckCircle.png

Regular & Secret Variables

CheckCircle.png

GitLab's built-in Docker registry

CheckCircle.png

Workflow Rules

CheckCircle.png

Environments

CheckCircle.png

Everything about Caching

CheckCircle.png

GitLab's Job Templates

CheckCircle.png

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

CheckCircle.png

Reuse pipeline configuration by writing own job ci-templates library

CheckCircle.png

Conditionals

CheckCircle.png

Learn Best Practices & industry insights!

What you’ll learn - Real Life Demos & CI/CD Concepts

CheckCircle.png

Pipeline: Test, Build, Push & Deploy Docker Containers

CheckCircle.png

Configure CI/CD pipelines for Monorepo & Polyrepo Microservices Application

CheckCircle.png

Deploy with Docker Compose

CheckCircle.png

Promote to staging and production

CheckCircle.png

Configure dynamic versioning

CheckCircle.png

Configure local & remote GitLab Runners

CheckCircle.png

Configure caching to speed up job execution

CheckCircle.png

Deploy to a K8s cluster from CI/CD pipeline

CheckCircle.png

Configure security tests (SAST)

CheckCircle.png

Learn Best Practices & industry insights!

Build production-ready DevOps Pipelines with
Docker, Kubernetes & Microservices

docker-icon.png

Build, Push and deploy Docker containers using Docker Compose

image 128.png

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

Icons.png

Learn how to deploy to a Kubernetes cluster from the pipeline

What Our Students Say 🧡

232.png
testimonial.png
testimonial12.png
32.png

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!

Rating.png

This is the best course I've ever seen. I knew some concepts, but this course is going so deep with all the information and is very well explained. You can't ask more than you will find in the course. For me it was like this...

Rating.png

Nana is the Best Teacher, Step by Step Practical Guide!! Make me run Commands every 5', and Verify Every Step!! QA Teaching 100%

Maximiliano U.

material-symbols_verified.png
Rating.png

You have very unique teaching skills. You explain complex topics with simplicity n clarity. Fabulous way of organizing and presenting.It has helped me a lot and made my work life easier.Keep up your good work 🙂

Chytra K.

material-symbols_verified.png
Rating.png

Teaching is an art and you are a genius in that @nana. Thank you so much for such a wonderful and awesome video tutorial! 😊

Syam K.

material-symbols_verified.png
Nana Gelb.png

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

CheckCircle.png

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

CheckCircle.png

Learn from a CNCF Ambassador, AWS Container Hero and Docker Captain

CheckCircle.png

Have given trainings/talks/workshops @ companies like NASA, Microsoft, Red Hat

Rectangle 94.png

Frequently Asked Questions

How long do I have access to the course?

You will have access to the course for 2 years.

What infrastructure we will use and what infrastructure cost to expect

First of all, we are using the free version and features of GitLab.

 

However, we are using 2 micro EC2 instances in the course for:

  • 1 server for GitLab Runners and

  • 1 as a server to deploy applications on it.

 

On AWS, you pay for instances per hour usage. So depending on how many hours your instances will be running, you can calculate the cost based on this price table: https://aws.amazon.com/ec2/pricing/on-demand/

 

Note that on AWS, you don’t pay for stopped instance, so you can save infrastructure costs by stopping and restarting the instances between the learning sessions.

 

You can use any other infrastructure platform or even local machine instead, but following the demos exactly as I show them in the course using the remote machines, will teach you how it is done in real world.

 

For running a Kubernetes cluster:

We will run the K8s cluster on Linode (LKE), because it's easy and fast to have a K8s cluster up and running, but also have a real-life environment instead of e.g. running it locally. You get 100$ free credit if you create an account for the first time, which is enough for the demo.

 

However, again you can choose to run your K8s cluster on any other cloud platform or locally via minikube etc.

Because the demo is not specific to Linode's managed cluster!

What if I am unhappy with the course?

Generally if something is unclear or you have problems with the course, we will try to support you immediately to answer all your questions. We are also happy to hear your feedback or criticism immediately, so we can fix it for you.
 

However, if you are still unsatisfied with your purchase, you can request a refund within the first 30 days. Check out our refund policy here: https://www.techworld-with-nana.com/terms-premium-courses
 

To ask for a refund, just send us an e-mail at techworld-with-nana@nnsoftware.at

Please include the reason why you're asking for a refund and the email address you use for your course account.
 

We are always improving the course based also or especially on student's feedback, so we would like to know what we can do better.

bottom of page