DevOps: CI/CD using Jenkins, Maven, Git, Sonar, OWASP, Trivy (Oct...

Category: Other
Type: Tutorials
Language: English
Total Size: 3.3 GB
Uploaded By: notimmune
Downloads: 38245
Last checked: Nov. 6th '25
Date uploaded: Nov. 6th '25
Seeders: 25461
Leechers: 10371
MAGNET DOWNLOAD
INFO HASH: 2C23D02509E459DA836E316ACA39354E14DF916D

Quote:

DevOps: CI/CD using Jenkins, Maven, Git, Sonar, OWASP, Trivy



Hands-on DevOps course to master CI/CD pipelines using Jenkins, Maven, Git, Sonar, OWASP & Trivy scanning tools.




Prerequisites

AWS Account – A valid AWS account is required.

Java Development Kit (JDK)

Headless Amazon Corretto 11 (java-11-amazon-corretto-headless)

OpenJDK 11 (openjdk-11-jre-headless, openjdk-11-jdk-headless)

Apache Maven – Version 3.8.5 or the latest.

Git – Required for version control.

SonarQube – Version 9.3 or the latest.

Maven Repository Access – Must have access to maven repo website to build packages.

Additional Requirements for Amazon Linux (AWS)

If using an Amazon Linux machine on AWS, install the following packages:

PostgreSQL 13

Vim

EPEL (Extra Packages for Enterprise Linux)

Other Required Tools

Nexus Server

Gradle Server

Jenkins

Ansible

Ensure all dependencies are installed before proceeding with the course for a smooth learning experience.



The entire DevOps course is based on AWS Environment.

In this course module, you will learn in addition to Jenkins, crossing technologies that go hand in hand with this service, such as Docker, AWS, Ansible, Git, Maven, Gradle, Pipelines, and many more!

Every section of this course has a different set of quizzes, and there is also many project lab assignment that will help you demonstrate what you have learned.

Project: Integration of Jenkins with Maven Tool

Project: CICD Process - Manual Approach Using Maven, SonarQube, Docker, AWS ECR.

Project: CI/CD Process Using Jenkins

Project: Continuous Deployment using Ansible Playbook

Project: Jenkins Master and Slave Server Configuration

Project: Hands-On DevOps Project: Deploy a Node.js Web App with Jenkins CI/CD

Introduction

What are DevOps & benefits?

DevOps LifeCycle :

— Continuous Development

— Continuous Integration

— Continuous Testing

— Continuous Feedback

— Continuous Deployment

— Continuous Monitoring

Linux for DevOps

Create an AWS Account

Create an EC2 Instance - Amazon Linux

Create a key pair - Public & Private Key

MobaXterm - Connect EC2 Instance

Putty - Connect EC2 Instance

Gitbash - Connect to EC2 Instance

Create an EC2 Instance - Ubuntu

Filter Instances

Access Instance using User Name & Password (Without using Private key)

More about private & public key

Passwordless authentication from Linux to Ubuntu Server

Lab - Access the Amazon Linux Instance other than the default user

Lab - Access the Ubuntu Linux Instance other than the default user

Lab - Passwordless Authentication between Amazon Linux & Ubuntu and Vice versa

Maven Tool

Overview of Maven Tool

Maven Lifecycle: Default, Clean & Site

Repositories used in Maven

Lab - Build the Springboot package in AWS Environment

Lab: Location of Artifacts & built package dependencies

Lab: Exploring pom.xml file

Lab: Execute & access the package application

Lab: Exploring dependencies of a built package

Lab: Build Lifecycle

Lab: Build a Web Application project using maven

Lab: Build a Web Application project using maven

SonarQube tool in Continuous Integration

About SonarQube tool & its features

Installation of SonarQube

Check SonarQube logs & configuration

SonarQube Service & port

Access SonarQube via URL

Configure Maven (CI Server)

Checkout & build the project using Maven

Integrate Maven with SonarQube to check the code quality

Add Sonar-maven-plugin

Lab - Bad code detected by SonarQube

Lab - Rectified the code & re-check by SonarQube

PostgreSQL Database for SonarQube

About PostgreSQL Database

Setup PostgreSQL Database with SonarQube

Create Database, User, and Grant Privileges

Sonarqube Configuration file sonar properties

Troubleshooting PostgreSQL Database for SonarQube

Integration of Maven with Nexus Repositories

Install & configure Nexus Server

Configure Sonatype Nexus Repository Manager

Configure CI Server to check out the project & Build the package

Configure springboot maven nexus deploy

Nexus Requirements in the pom.xml

Define Nexus login credentials

Deploy the Artifacts to Nexus Repository

Integration of Gradle with Nexus Repositories

Installation of Nexus server

Configuration of Gradle Server as CI

Build the springboot tomcat project using gradle tool

Add plugin in build.gradle

Add Nexus repositories details in build.gradle

Use if-else condition in build.gradle

Add credentials in gradle properties

Publish the project artifacts into Nexus Server

Download the Artifacts using Continuous Deployment

Integrate Jenkins with Git & Maven project

About Jenkins

Overview of Jenkins integration with GitHub & how to build a java based project

Installation of Jenkins, Java, Maven & Git on EC2 Instance

Configure Jenkins on EC2 Instance

Configure GitHub Credentials & Maven Location on Jenkins

Create & Build the Java-based project using Maven Tool

Add Maven Plugins in Jenkins

CI/CD Pipeline – Manual Implementation with Maven, SonarQube, Docker & AWS ECR

CI/CD Process Explained: An Overview

Setting Up a Build Server with Java, Git, Maven, and Docker

Installing SonarQube on an Ubuntu Server

Configure Sonar-Maven-Plugin

Starting the SonarQube Service on Ubuntu

Analyzing Code Quality with SonarQube

Dockerfile Overview: Build Docker Images

AWS ECR: Create a New Repo

Create IAM Role to Allow CI Server Access to AWS ECR

Build and Push Docker Image to AWS ECR

Set Up a CD Server for Continuous Deployment

Pull and Run Docker Image from AWS ECR on CD Server

CI/CD Pipeline: Full Process Recap

CICD Process Using Jenkins

Overview of CICD Process using Jenkins

Install a Jenkins Server (CI Server)

Add maven in Jenkins Server from Global Tool Configuration

Create a Jenkins pipeline for Checkout & build the project

Install SonarQube Server using Docker container

Generate the token from SonarQube Server

Add Sonar Login Credentials on Jenkins Server

Install SonarQube Scanner plugins on Jenkins

Add SonarQube on Jenkins Server

Pipeline for SonarQube Scanner for Jenkins

Pipeline for success or aborted due to quality gate failure

Configure a webhook in your SonarQube Server

Add stage in pipeline to create a Docker Image using DockerFile

Create an IAM User to have access to AWS ECR and add it to Jenkins Server

Add stage in pipeline to Push the Docker Image to AWS ECR

Configure SES to send an email notification

Integrate SES with Jenkins using pipeline

Receive an Email Notification after the success or failure of Jenkins Pipeline

Continuous Deployment using Ansible Playbook

Configure a CD Server using Ubuntu Server

Ansible Setup on Jenkins Server

Install packages on CD Server

Create a Playbook to establish a connection from CD Server to AWS ECR

Playbook to pull the image from ECR to CD Server

Playbook to run the Container using the Docker Image

Access the Springboot Application running on CD Server

Jenkins Master and Slave Server

Overview of Jenkins master & slave server

How does Jenkins Master and Slave Architecture work?

Lab - Install Jenkins Master Server in AWS Environment

Lab - Configure Jenkins Master Server

Lab - Manager Nodes and Clouds

Lab - Setting up Slaves with Jenkins Master

Lab - Troubleshooting while adding a slave server

Lab - Create a job for the Slave Using Freestyle project

Lab - Create a job for Slave Using a pipeline project (Springboot Appl)

Lab - Create a job for Slave Using a pipeline project (Springboot Appl)

Configurations in slave machine

Lab - Establish connectivity between Master & Slave Using SSH keys

Lab - Launch agent on Slave Machine

Lab - Create a job for building a Springboot project on Slave Machine

Hands-On DevOps Project: Deploy a Node.js Web App with Jenkins CI/CD

Introduction

Course Overview

Git Bash and GitHub

Create a GitHub repository for a Bingo application

Install Git Bash

Clone the GitHub repository to your local system

Generate a personal access token

Push the source code to a GitHub repository

Set up the DevOps Environment on AWS

Set up virtual machines for Jenkins and SonarQube servers

Installation of Docker on a SonarQube server

Authenticate to DockerHub from the SonarQube server

Run SonarQube using Docker

Access the SonarQube Server via the URL using port 9000

Installation of Jenkins

Access the Jenkins Server via the URL using port 8080

Customize the Jenkins Server

Plugins required on the Jenkins server

Required Plugins on Jenkins Server

Configure tools on the Jenkins server

Configure JDK tool

Configure SonarQube Scanner tool

Configure Node.js tool

Configure Dependency-Check tool

Configure Docker tool

Set up a connection from Jenkins to the SonarQube server

Set up a connection from Jenkins to the SonarQube server

About Webhook

Configure a webhook

Add SonarQube Server

Jenkins CI/CD pipeline job to clean and check out the project

Create a job to clean the workspace

Add a stage in the pipeline to check out the project

SonarQube - Code quality tool for better code

Add a stage to the pipeline for SonarQube analysis

SonarQube Analysis command using `withSonarQubeEnv`

Run the job and check the SonarQube report

Add a stage WaitforQualityGate

Run the job to verify the WaitforQualityGate

Install Node.js dependencies, use npm command

Add a stage to Install Node.js dependencies

OWASP tool -Security testing tool

Add a stage to perform OWASP scanning

Explore the OWASP report

Trivy scanning tool

Add a stage to perform trivy fs scanning

Explore the trivy report

Build the Docker image and then push it to DockerHub

About the Docker Build

Add a stage to build the Docker image for a Node.js project

Dockerfile for building the Docker image

Run the job to verify the Docker Image

Push the Docker Image to DockerHub

Trivy - Scanning on Docker Image

Add a stage to scan the docker image

Explore the trivy report

Deploy the Node.js web Application

Add a stage to deploy the Docker Image/Node.js Project

Access the Node.js web application through the URL

Domain Registration and SSL Certification

Register a free domain

Install nginx

Modify the 'A' record DNS for the registered domain

Install and obtain the SSL Certificate

Last lecture