To attend this course you must have a good command line knowledge of Linux or Unix as we will be using the Linux operating system to perform the work. The course can be tailored to work on WIndows systems if you are using your own platform. The approach of this course is to take you through setting up a Jenkins controller and agent nodes right through to managing the server components and jobs for your pipelines.
You should attend if you are planning a new DevOps venture, or want to improve your Jenkins configuration within your business. We will take you right from the beginning of what Jenkins is and can do for your DevOps processes, installing and configuring an enterprise ready Jenkins set up, and through to securing and managing your jobs. We will also touch on the use of Jenkins in Docker and Kubernetes.
The aim of this course is to provide a hands on approach to working with Jenkins and providing as much time for you to get your hands dirty and fix any problems that may occur during the course. The sessions will consist of some theory to understand the concepts of Jenkins, but mostly you'll be following examples either instructor lead, or through lab exercises.
A good understanding of Linux and/or Windows as you will need to write some commands at the command line both for setting up and for Jenkins jobs, although most of the commands will be provided. You should be compitent in using a web browser and the Internet as you may need to look up answers or find software to install.
1st Day: Start 9:00am - Finish
5:00pm
Subsequent Days: Start
9:00am - Finish 5:00pm
Understand where Jenkins came from, what it is, busting the complicated myth, how it fits into your CI/CD & CD pipelines. We'll also discuss other scenarios of what Jenkins can do, that most people haven't thought about.
Here you will get your hands on installing a Jenkins controller, identifying what plugins you will need to get started, and setting up the admin user. You will then log in and take a tour of the user interface.
Before we go deeper in to Jenkins we will create our first simple job and look at the features of a job, such as viewing the console and workspace, adding parameters and using variables.
Here you will investigate how to install, manage and maintain Jenkins plugins. You will set up plugins for Java, Maven, publishing artefacts, and more. We will then use these plugins during the rest of the course. As part of this section we will also look at Jenkins plugin documentation so that you can automate the installation of plugins.
In this module you will discover how to add authentication to your Jenkins server. We will show you what is available, and then we will configure our server to use a job matrix.
In this section you will take a look behind the scene at your Jenkins controller and what the directory layout of Jenkins is, and essential files. You will also identify what you will need to back up, and what can be used to recreate your controller if you need to rebuild.
In this module you will create a Jenkins agent node that will be used to compile Java applications.
Here you will create a Jenkins job from a Git repository. This will be a Java Spring Boot project which will be compiled using Maven. You will then publish the final artefact through Jenkins. You will configure this job to use the agent node and not the controller.
In this module you will understand how Jenkins can build from different branches. You'll be able to define which branches to build and also target branches.
As with the controller we will look behind the scenes of the agent node to see what is stored on this node, and we'll see what is stored on the controller.
What is a Jenkins pipeline, and how does it differ from a Jenkins job? We will change our Java application into a Jenkins pipeline to perform a CI/CD process.
In this module you will discover how Jenkins can be used to perform the deployment of your application. As you'll discover, just like any other job/pipeline it's all about interactions with the right software.
In this section we will discuss some of the configuration settings and environment set up methods that can help improve your CI/CD & CD environment using Jenkins.
Here we will back up the essential files and folders required to recreate your Jenkins system. We will then remove Jenkins from both controller and agent nodes and rebuild to the point where we can run our jobs and produce the latest artefact.
In this final module we will look at how you could use Docker to run your Jenkins controller and agents, and discuss how systems such as Kubernetes can use Jenkins.