Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
GitLab CI: Pipelines, CI/CD and DevOps for Beginners
Rating: 4.5 out of 5(77 ratings)
3,979 students

GitLab CI: Pipelines, CI/CD and DevOps for Beginners

Learn GitLab CI / CD with Docker & DevOps: obtain valuable DevOps skills. Build pipelines.
Created byVijay Patel
Last updated 10/2022
English
English [Auto],

What you'll learn

  • What is a pipeline
  • Automate your build, test & deployment with Gitlab CI
  • Demonstrate your understanding of building CI/CD pipelines to future employers
  • Automatic deployments using AWS

Course content

1 section15 lectures2h 1m total length
  • Introduction8:03

    Begin with a GitLab introduction, learn Git vs GitLab, and how CI and continuous deployment fit into hosting; then create your first project and clone link to push and pull.

  • Getting Started11:51

    Learn to download and install git, initialize a local repository, configure global user name and email, and push commits to a GitLab project.

  • Fork Project4:52

    Fork a project in GitLab by creating a group namespace, making a private copy for changes without altering the original, and submitting a merge request from source to target branches.

  • SSH5:03

    Generate and add an ssh key for GitLab authentication to log in without username and password. The video guides ssh-keygen, saving the key, and adding it to GitLab's SSH keys.

  • GitLab Runner8:44

    Learn to install, register, and start a GitLab runner for GitLab CI, obtain the registration token from your project, select a shell executor, and verify the activated runner.

  • Continues Integration and Deployment13:58

    Learn GitLab ci/cd basics, including continuous integration, delivery, and deployment, and how to create a .gitlab-ci.yml with a demo job to run a pipeline with a runner.

  • Branching and Merging8:57

    Learn to use Git branching and merging to safely develop features, including creating and checking out branches, merging into master, and deleting branches locally and remotely.

  • Tags9:22

    Learn how to create git tags to mark release points or historic points in your repository, and how to display, push to remote, and delete tags in GitLab.

  • Fetch vs Pull6:16

    Explain git fetch and git pull: fetch downloads changes to the local repository without touching the working directory, enabling review before merging. Pull auto-merges into the current branch, risking conflicts.

  • Cherry Pick6:56

    Learn to use git cherry-pick to apply a single commit from one branch to another, contrasting it with merge and rebase, with practical examples on master and develop branches.

  • Revert and Reset12:09

    Learn how to undo changes in working directory and staging area, reset commits locally in soft, mixed, or hard modes, and use revert to undo commits while considering remote history.

  • Create a Merge Request3:42

    Learn how to create a merge request on GitLab by cloning a repo, creating a feature branch, committing changes, pushing, and submitting the merge request for review.

  • CI CD Stages and Jobs9:01

    Learn to create and manage GitLab CI pipelines with defined stages and jobs, including build, test, and deploy, using GitLab CI YAML and understanding parallel versus sequential execution.

  • CI Maven Project8:02

    Learn to set up a GitLab CI pipeline for a Maven project using a Docker-based runner, defining build, test, package, and deploy stages, and caching the Maven repository and target.

  • Node JS Project4:25

    Learn to build a Node.js project with GitLab CI/CD using a shared runner, two stages (build and build Docker image), and two jobs (build Node.js app and build Docker image).

Requirements

  • 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)

Description

his 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 expert

A 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.

Who this course is for:

  • Software developers learning to build pipelines in order to test & deploy code

  • IT Professionals: Developers, Software Engineers, Application Architects, Infrastructure Architects, and Operations

Who this course is for:

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