GitLab CI Pipelines CICD and DevOps for Beginners

Learn GitLab CI / CD with Docker & DevOps: obtain valuable DevOps skills. Build pipelines.
GitLab CI Pipelines CICD and DevOps for Beginners
File Size :
1.73 GB
Total length :
5h 15m



Valentin Despa


Last update




GitLab CI Pipelines CICD and DevOps for Beginners

What you’ll learn

What is a pipeline
What is Continuous Integration (CI), Continuous Delivery (CD) and Continuous Deployment (CD)
Automate your build, test & deployment with Gitlab CI
Learn industry “best practices” in building CI/CD pipelines
Demonstrate your understanding of building CI/CD pipelines to future employers
Automate your builds, tests, and deployments
Automatic deployments using AWS
Build pipelines with code quality checks, unit tests, API testing
Solve problems with hands-on assignments
Create Merge Requests and review code
Dynamic environments

GitLab CI Pipelines CICD and DevOps for Beginners


Registering for a GitLab .com account (the free plan works very well)
Basic experience with Linux, Linux commands and using the terminal
Know how to work with Git (basics like configuring a repository locally, cloning, merge, commit, push)
Admin permissions that allow you to install additional tools (Node, npm, Docker, Virtualbox)
Optional: some basic experience with Docker will be a bonus


This course is neither endorsed by, nor in partnership, nor affiliated with GitLab, Inc. This course will teach you how to use Gitlab CI for your own projects. You will learn the basics of CI/CD and start building pipelines right from the first lecture.Some highlights:- have an overview of the Gitlab architecture- create a simple pipeline- learn the CI/CD practice by deploying a simple website- use Docker images within Gitlab- learn how to deploy a Java application to AWS, using AWS S3 and AWS Elastic Beanstalk. This course will NOT make you a GitLab CI / DevOps expertA lot of courses promise you will become an expert. Becoming an expert in any tool comes with time and hard work. It simply does not make sense to promise something like that. It will not be honest. This is a course designed for beginners. Learning to build pipelines is a try-and-error process that can be very frustrating. You need to understand the tools you use and how GitLab can support your needs. In the end, GitLab is just a tool. What I will try is to explain to you the basics and offer you enough practice opportunities so that you can apply what you learn easily in your own projects as well. I will show you how to build pipelines with Gitlab CI.


Section 1: Introduction

Lecture 1 Course notes & important resources

Lecture 2 Your first pipeline

Lecture 3 My GitLab CI pipeline is not running

Lecture 4 Configuring Git for Gitlab CI

Lecture 5 Gitlab architecture

Lecture 6 Why GitLab CI?

Lecture 7 How much does Gitlab cost?

Lecture 8 About the course

Lecture 9 Important skills you need to acquire

Section 2: Basic CI/CD workflow with Gitlab CI

Lecture 10 Overview

Lecture 11 What is CI / CD?

Lecture 12 Alternative if you don’t want to install new software

Lecture 13 Short introduction to Node.js

Lecture 14 Creating a new project

Lecture 15 Troubleshooting

Lecture 16 Building the project locally

Lecture 17 Short introduction to images and Docker

Lecture 18 Building the project using Gitlab CI

Lecture 19 Adding a test stage

Lecture 20 Running jobs in parallel

Lecture 21 Running jobs in the background

Lecture 22 Deployment using

Lecture 23 Using Environment variables for managing secrets

Lecture 24 Deploying the project using Gitlab CI

Lecture 25 How does know the environment variables?

Section 3: Gitlab CI Fundamentals

Lecture 26 Overview

Lecture 27 Predefined environment variables

Lecture 28 Pipeline triggers / Retrying failed jobs / Pipeline schedules

Lecture 29 Using caches to optimize the build speed

Lecture 30 Cache vs Artifacts

Lecture 31 Deployment Environments

Lecture 32 Defining variables

Lecture 33 Manual deployments / Manually triggering jobs

Lecture 34 Merge requests – Using branches

Lecture 35 Merge requests – What is a Merge Request?

Lecture 36 Merge requests – Configuring Gitlab

Lecture 37 Merge requests – Your first merge request

Lecture 38 Dynamic environments

Lecture 39 Troubleshooting environment variables not being available

Lecture 40 Destroying environments (Clean-up after the Merge Request)

Lecture 41 before_script & after_script configuration

Lecture 42 Recap & conclusion

Section 4: YAML basics

Lecture 43 Overview

Lecture 44 Understanding YAML

Lecture 45 Disabling jobs

Lecture 46 Anchors

Lecture 47 Creating job templates

Section 5: Using Gitlab CI to build and deploy a Java application to AWS Elastic Beanstalk

Lecture 48 Overview

Lecture 49 Introduction to the Java application

Lecture 50 Calling an API with Postman

Lecture 51 Continuous Integration (CI) pipeline overview

Lecture 52 Build stage: Building a Java application locally

Lecture 53 Build stage: Building a Java application with Gitlab CI

Lecture 54 Test stage: Adding a smoke test

Lecture 55 CI/CD pipeline recap

Lecture 56 Brief introduction to Amazon Web Services (AWS)

Lecture 57 Notice about unexpected costs while using AWS

Lecture 58 Serverless computing with AWS Elastic Beanstalk

Lecture 59 How to deploy to AWS (manual upload)

Lecture 60 How to deploy to AWS from GitLab CI

Lecture 61 Getting started with AWS S3

Lecture 62 GitLab Group settings

Lecture 63 How to upload a file to AWS S3 from GitLab CI

Lecture 64 How to deploy a Java application to AWS Elastic Beanstalk using the AWS CLI

Lecture 65 Assignment

Lecture 66 Assignment solution

Lecture 67 Create an application version

Lecture 68 Verify the application version after deployment

Lecture 69 Revisiting the CI pipeline

Lecture 70 Ensuring coding standards with tools for codestyle checking with PMD

Lecture 71 Assignment – Add code quality stage with PMD

Lecture 72 Assignment solution – Add code quality stage with PMD

Lecture 73 Quick introduction to unit testing in CI pipelines

Lecture 74 Unit test stage: Run JUnit tests with GitLab CI

Lecture 75 How to structure a CI/CD pipeline in GitLab CI?

Lecture 76 API test stage: Run Postman API tests in GitLab CI

Lecture 77 GitLab Pages (for publishing HTML reports or dashboards)

Lecture 78 Final reminder to terminate all AWS services

Section 6: Specific topics / User topics

Lecture 79 Ask the instructor

Section 7: Conclusion

Lecture 80 Not the end

Lecture 81 Bonus lecture

Software developers learning to build pipelines in order to test & deploy code,IT Professionals: Developers, Software Engineers, Application Architects, Infrastructure Architects, and Operations

Course Information:

Udemy | English | 5h 15m | 1.73 GB
Created by: Valentin Despa

You Can See More Courses in the Developer >> Greetings from

New Courses

Scroll to Top