# KodeKloud: Beta Courses Jenkins

## Jenkins

### Introduction

- [Course Introduction](https://notes.kodekloud.com/docs/Jenkins/Introduction/Course-Introduction/page.md): This comprehensive Jenkins course covers deploying instances, setting up CI/CD pipelines, and managing security through hands-on labs and real-world projects.
- [Application Details](https://notes.kodekloud.com/docs/Jenkins/Introduction/Application-Details/page.md): This article explores the Go Web App sample application designed for deployment using Jenkins, featuring GORM for database operations and integrated Swagger API documentation.
- [Working with the Application](https://notes.kodekloud.com/docs/Jenkins/Introduction/Working-with-the-Application/page.md): This article explains how to set up and test a Go web application using Jenkins and automate API testing.

### Prerequisites

- [What is CICD](https://notes.kodekloud.com/docs/Jenkins/Prerequisites/What-is-CICD/page.md): This lesson explores the fundamentals of CI/CD, essential practices in modern software development for efficient code packaging, testing, and deployment across various environments.
- [Why Jenkins](https://notes.kodekloud.com/docs/Jenkins/Prerequisites/Why-Jenkins/page.md): Jenkins is a popular CI/CD tool known for its versatility, cost-effectiveness, and extensive plugin ecosystem.
- [Jenkins Getting Started](https://notes.kodekloud.com/docs/Jenkins/Prerequisites/Jenkins-Getting-Started/page.md): This article explores Jenkins, an open-source automation server for CI/CD workflows, highlighting its features, documentation, plugins, and community support.

### Installing Jenkins

- [Installing Jenkins](https://notes.kodekloud.com/docs/Jenkins/Installing-Jenkins/Installing-Jenkins/page.md): This article demonstrates how to install Jenkins quickly and efficiently on Ubuntu 20.04 for continuous integration and deployment.
- [Install Jenkins on a VM](https://notes.kodekloud.com/docs/Jenkins/Installing-Jenkins/Install-Jenkins-on-a-VM/page.md): This guide demonstrates how to install Jenkins on an Ubuntu virtual machine deployed on Microsoft Azure.
- [Jenkins CLI](https://notes.kodekloud.com/docs/Jenkins/Installing-Jenkins/Jenkins-CLI/page.md): This guide explains how to configure authentication and use the Jenkins CLI via cURL.
- [Using Jenkins CLI](https://notes.kodekloud.com/docs/Jenkins/Installing-Jenkins/Using-Jenkins-CLI/page.md): Learn to manage your Jenkins instance using the CLI, covering installation, authentication, job listing, and job building.

### Jenkins Plugins and Integrations

- [What are plugins](https://notes.kodekloud.com/docs/Jenkins/Jenkins-Plugins-and-Integrations/What-are-plugins/page.md): Plugins enable seamless interaction between services, allowing integration and customization of workflows by connecting different platforms.
- [Searching through plugins](https://notes.kodekloud.com/docs/Jenkins/Jenkins-Plugins-and-Integrations/Searching-through-plugins/page.md): Learn how to search for and manage plugins on your Jenkins instance and integrate them into your pipelines.
- [Installing a Plugin](https://notes.kodekloud.com/docs/Jenkins/Jenkins-Plugins-and-Integrations/Installing-a-Plugin/page.md): This guide explains how to install and manage plugins in Jenkins for optimizing CI/CD pipelines during initial setup and post-deployment.
- [Restarting Jenkins For Plugins That Require Restarts](https://notes.kodekloud.com/docs/Jenkins/Jenkins-Plugins-and-Integrations/Restarting-Jenkins-For-Plugins-That-Require-Restarts/page.md): This guide explains how to effectively restart Jenkins on a systemd-based Linux system for plugins that require restarts.
- [Jenkins Steps and Plugin](https://notes.kodekloud.com/docs/Jenkins/Jenkins-Plugins-and-Integrations/Jenkins-Steps-and-Plugin/page.md): This article explores Jenkins pipeline keywords and plugins, providing examples of their integration into pipeline scripts.

### Exploring the Jenkins UI

- [Jenkins Visuals](https://notes.kodekloud.com/docs/Jenkins/Exploring-the-Jenkins-UI/Jenkins-Visuals/page.md): This article provides a comprehensive guide to navigating the Jenkins UI for efficient continuous integration and delivery.
- [Signing in and seeing the visuals](https://notes.kodekloud.com/docs/Jenkins/Exploring-the-Jenkins-UI/Signing-in-and-seeing-the-visuals/page.md): This article provides an overview of the Jenkins dashboard and its key components for managing CI/CD processes.
- [Managing users and teams](https://notes.kodekloud.com/docs/Jenkins/Exploring-the-Jenkins-UI/Managing-users-and-teams/page.md): This article explores managing users and teams in Jenkins, focusing on access control, user roles, permissions, and security settings.
- [Managing the system and credentials](https://notes.kodekloud.com/docs/Jenkins/Exploring-the-Jenkins-UI/Managing-the-system-and-credentials/page.md): This guide explores essential Jenkins configurations for system settings and credentials management to optimize stability, security, and integration with external systems.
- [Build history and CICD visuals](https://notes.kodekloud.com/docs/Jenkins/Exploring-the-Jenkins-UI/Build-history-and-CICD-visuals/page.md): This lesson explores the Jenkins dashboard and key aspects of CI/CD pipeline builds, demonstrating how to interpret dashboard details and pipeline components.

### Systems Administration with Jenkins

- [Administering Jenkins](https://notes.kodekloud.com/docs/Jenkins/Systems-Administration-with-Jenkins/Administering-Jenkins/page.md): Best practices for managing Jenkins to ensure stability, scalability, and quick recovery in CI/CD environments.
- [Backup and restoring Jenkins](https://notes.kodekloud.com/docs/Jenkins/Systems-Administration-with-Jenkins/Backup-and-restoring-Jenkins/page.md): This article discusses the importance of backing up the Jenkins home folder to secure critical data and ensure system integrity.
- [Backup Jenkins](https://notes.kodekloud.com/docs/Jenkins/Systems-Administration-with-Jenkins/Backup-Jenkins/page.md): This article explores strategies for backing up Jenkins instances, including file system snapshots, backup plugins, and custom shell scripts.
- [Restore Jenkins](https://notes.kodekloud.com/docs/Jenkins/Systems-Administration-with-Jenkins/Restore-Jenkins/page.md): This guide explains how to restore a Jenkins server from a backup using the Thin Backup plugin.
- [Monitoring Jenkins](https://notes.kodekloud.com/docs/Jenkins/Systems-Administration-with-Jenkins/Monitoring-Jenkins/page.md): This guide explains how to monitor Jenkins using plugins and integrate metrics with Prometheus.
- [Prometheus](https://notes.kodekloud.com/docs/Jenkins/Systems-Administration-with-Jenkins/Prometheus/page.md): This article explains how to integrate Prometheus with Jenkins to automatically expose and monitor Jenkins metrics.

### Pipelines

- [What is a Jenkins file](https://notes.kodekloud.com/docs/Jenkins/Pipelines/What-is-a-Jenkins-file/page.md): A Jenkinsfile defines instructions and templates for automating builds, tests, and deployments in a pipeline.
- [Build a Jenkins file](https://notes.kodekloud.com/docs/Jenkins/Pipelines/Build-a-Jenkins-file/page.md): This article teaches the structure and functionality of Jenkinsfiles through examples, from basic to complex multi-stage pipelines.
- [Run a Sample Pipeline](https://notes.kodekloud.com/docs/Jenkins/Pipelines/Run-a-Sample-Pipeline/page.md): This article demonstrates how to set up a sample Jenkins pipeline before building a full Go application pipeline.
- [Build a Multistage Pipeline](https://notes.kodekloud.com/docs/Jenkins/Pipelines/Build-a-Multistage-Pipeline/page.md): This tutorial demonstrates how to extend a pipeline configuration by adding a new stage named "UAT" to create a multistage pipeline.
- [Build a CI Pipeline](https://notes.kodekloud.com/docs/Jenkins/Pipelines/Build-a-CI-Pipeline/page.md): This tutorial covers setting up a continuous integration pipeline using Jenkins to run tests on a Go application.
- [Building a CD Pipeline](https://notes.kodekloud.com/docs/Jenkins/Pipelines/Building-a-CD-Pipeline/page.md): This guide explains setting up a CI/CD pipeline using Jenkins and Docker to retrieve code, run tests, and build a Docker image.
- [Full pipeline deployment](https://notes.kodekloud.com/docs/Jenkins/Pipelines/Full-pipeline-deployment/page.md): This guide explains setting up a Jenkins pipeline to automate building, testing, and running a Go web application.

### Build Agents

- [What are Build Agents](https://notes.kodekloud.com/docs/Jenkins/Build-Agents/What-are-Build-Agents/page.md): This article explores build agents in CI/CD pipelines, detailing their roles in code building, testing, and deployment across various platforms.
- [Using an Ubuntu Server as a Build Agent](https://notes.kodekloud.com/docs/Jenkins/Build-Agents/Using-an-Ubuntu-Server-as-a-Build-Agent/page.md): This guide explains how to configure an Ubuntu server as a Jenkins build agent, including user creation, credential setup, node configuration, and connection verification.
- [Using the New Build Agent for a CICD Pipeline](https://notes.kodekloud.com/docs/Jenkins/Build-Agents/Using-the-New-Build-Agent-for-a-CICD-Pipeline/page.md): This guide demonstrates configuring and utilizing a dedicated build agent within a Jenkins-based CICD pipeline for specific operating systems.
- [Using Container Build Agents](https://notes.kodekloud.com/docs/Jenkins/Build-Agents/Using-Container-Build-Agents/page.md): This article explains using Docker containers as ephemeral build agents in Jenkins to simplify infrastructure management and streamline CI/CD workflows.

### Blue Ocean

- [What is Blue Ocean](https://notes.kodekloud.com/docs/Jenkins/Blue-Ocean/What-is-Blue-Ocean/page.md): Blue Ocean modernizes the Jenkins UI, enhancing usability and visualization for a more intuitive CI/CD experience.
- [Installing Blue Ocean](https://notes.kodekloud.com/docs/Jenkins/Blue-Ocean/Installing-Blue-Ocean/page.md): This article covers the installation and access procedures for Blue Ocean in Jenkins.
- [Creating a Pipeline](https://notes.kodekloud.com/docs/Jenkins/Blue-Ocean/Creating-a-Pipeline/page.md): This guide explains how to create a new pipeline using Blue Ocean with step-by-step instructions for setup and Jenkinsfile generation.
- [BlueOcean Dashboard](https://notes.kodekloud.com/docs/Jenkins/Blue-Ocean/BlueOcean-Dashboard/page.md): This article provides a detailed overview of the BlueOcean dashboard interface for managing and troubleshooting Jenkins pipelines.

### Securing Jenkins

- [Jenkins Security](https://notes.kodekloud.com/docs/Jenkins/Securing-Jenkins/Jenkins-Security/page.md): This article explores best practices for securing Jenkins installations, focusing on user access control, credential management, and common security pitfalls in CI/CD environments.
- [Managing and enabling security](https://notes.kodekloud.com/docs/Jenkins/Securing-Jenkins/Managing-and-enabling-security/page.md): This article explores security options in Jenkins, including global settings and plugins, to enhance system security and manage user access effectively.
- [Access Control for Builds](https://notes.kodekloud.com/docs/Jenkins/Securing-Jenkins/Access-Control-for-Builds/page.md): This article discusses enhancing security in Jenkins builds through access control and the use of specialized plugins.
- [Security Pipeline Matrix](https://notes.kodekloud.com/docs/Jenkins/Securing-Jenkins/Security-Pipeline-Matrix/page.md): This article explains how to configure matrix-based security in Jenkins to manage user permissions effectively.

### Conclusion

- [Conclusion](https://notes.kodekloud.com/docs/Jenkins/Conclusion/Conclusion/page.md): This article summarizes a comprehensive journey into systems administration, Jenkins management, deployment strategies, and CI/CD implementations.
- [Course Outro](https://notes.kodekloud.com/docs/Jenkins/Conclusion/Course-Outro/page.md): Build a complete CI/CD pipeline to gain hands-on experience applying course concepts and best practices.
