1. Install Latest JDK (OpenJDK 17+ recommended)
bashsudo apt update sudo apt install openjdk-17-jdk -y java -version
-
Installs OpenJDK 17.
-
java -versionconfirms the installation.
2. Add Jenkins Repository and Key
bashwget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
sudo sh -c 'echo deb https://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt update
-
Adds Jenkins official repo and key.
3. Install Jenkins
bashsudo apt install jenkins -y
4. Start and Enable Jenkins Service
bashsudo systemctl start jenkins
sudo systemctl enable jenkins
sudo systemctl status jenkins
-
Starts Jenkins and enables it to run on boot.
-
statuschecks if Jenkins is running.
5. Access Jenkins Web UI
-
Open browser:
http://<VM-IP>:8080 -
Get initial admin password:
bashsudo cat /var/lib/jenkins/secrets/initialAdminPassword
-
Use this password to unlock Jenkins in the browser and continue setup.
6. Jenkins CLI Commands (using jenkins-cli.jar)
a) Download Jenkins CLI
bashwget http://<VM-IP>:8080/jnlpJars/jenkins-cli.jar
b) List all jobs
bashjava -jar jenkins-cli.jar -s http://<VM-IP>:8080 list-jobs
c) Trigger a build for a job
bashjava -jar jenkins-cli.jar -s http://<VM-IP>:8080 build <job-name>
d) Get job configuration XML
bashjava -jar jenkins-cli.jar -s http://<VM-IP>:8080 get-job <job-name> > config.xml
e) Create a new job from XML config
bashjava -jar jenkins-cli.jar -s http://<VM-IP>:8080 create-job <new-job-name> < config.xml
f) Enable/Disable a job
bashjava -jar jenkins-cli.jar -s http://<VM-IP>:8080 disable-job <job-name> java -jar jenkins-cli.jar -s http://<VM-IP>:8080 enable-job <job-name>
g) Get build logs for a job
bashjava -jar jenkins-cli.jar -s http://<VM-IP>:8080 console <job-name> <build-number>
1. Configure System
Step 1: Open Jenkins dashboard
Go to
http://<your-jenkins-ip>:8080Login with admin user.
Step 2: Navigate to Manage Jenkins > Configure System
Click Manage Jenkins from the left menu
Click Configure System
Step 3: Set Jenkins URL
Under Jenkins Location → set Jenkins URL to your Jenkins server URL (e.g.,
http://your-jenkins-server:8080)This URL is used in notifications and links.
Step 4: Add JDK installation
Scroll to JDK installations section
Click Add JDK
Enter name (e.g.,
OpenJDK 17)Check Install automatically and select JDK version OR provide local path if installed manually
Step 5: Configure Tool Locations (optional)
For Maven, Git, Gradle, specify executable paths if Jenkins does not auto-detect.
Step 6: Configure Email Notification
Scroll to Extended E-mail Notification or E-mail Notification section
Enter SMTP server (e.g.,
smtp.gmail.com)Enter default user email suffix if required
Test email sending using Test configuration by sending test e-mail
Step 7: Save changes
Click Save at the bottom.
2. Configure Global Security
Step 1: Go to Manage Jenkins > Configure Global Security
Click Manage Jenkins > Configure Global Security
Step 2: Enable Security
Check Enable security checkbox
Step 3: Configure Authentication
Select authentication method:
Jenkins’ own user database (default)
LDAP or Active Directory (if integrated with company network)
Step 4: Configure Authorization
Choose authorization strategy:
Matrix-based security: granular control over who can do what
Project-based Matrix Authorization
Logged-in users can do anything (simple)
Anyone can do anything (not recommended for production)
Step 5: Configure Agent Protocols and Security (optional)
Under Agent-to-master security subsystem, keep secure protocols enabled
Check Prevent Cross Site Request Forgery exploits
Step 6: Save configuration
Click Save
3. Manage Credentials
Step 1: Navigate Manage Jenkins > Credentials
Click Manage Jenkins > Manage Credentials
Step 2: Select domain or global credentials
Select appropriate domain (e.g., Global) or create new domain
Step 3: Add Credentials
Click Add Credentials
Choose credential type:
Username with password
SSH Username with private key
Secret text (API tokens, passwords)
Certificate
Step 4: Enter required details and save
Provide ID and description for easy identification in jobs
4. Manage Plugins
Step 1: Go to Manage Jenkins > Manage Plugins
Click Manage Jenkins > Manage Plugins
Step 2: Install new plugins
Open Available tab
Search and select plugins (e.g., Git, Pipeline, Docker plugins)
Click Install without restart or Download now and install after restart
Step 3: Update existing plugins
Open Updates tab
Select plugins to update and click Download now and install after restart
Step 4: Plugin management
Enable/disable installed plugins from Installed tab
5. Manage Nodes and Clouds (Agents)
Step 1: Go to Manage Jenkins > Manage Nodes and Clouds
Click Manage Jenkins > Manage Nodes and Clouds
Step 2: Add new node
Click New Node
Enter node name, select Permanent Agent, click OK
Step 3: Configure node
Enter remote root directory (e.g.,
/home/jenkins)Set number of executors (parallel jobs it can run)
Set labels for job assignment
Choose launch method (SSH is recommended)
Provide SSH host, credentials, and test connection
Step 4: Save node configuration
Click Save
6. System Logs and Monitoring
Step 1: Go to Manage Jenkins > System Log
View Jenkins runtime logs here
Add Log Recorders to track specific classes/packages for debugging
Step 2: Load statistics
View executor load and system resource consumption
7. Using Script Console
Step 1: Manage Jenkins > Script Console
Execute Groovy scripts for administration tasks
Example: List all jobs
groovyJenkins.instance.getAllItems(Job.class).each { println it.name }
Summary Tips
Always backup Jenkins config files (usually in
/var/lib/jenkins) before major changes.Regularly update Jenkins core and plugins for security and features.
Use credentials plugin to securely manage secrets.
Use matrix-based security for fine-grained user permissions.
Label nodes properly to assign jobs efficiently.