100 Days of DevOps — Day 60-Introduction to Jenkins

Welcome to Day 60 of 100 Days of DevOps, Focus for today is Jenkins

Jenkins is an open source automation server written in Java.

  • As Jenkins is written in Java you must need to install java to run Jenkins
  • To use this repository, run the following command:

Jenkins Installation

  • Start Jenkins Service
  • Make sure it's available/enable after reboot
  • Check the status of Jenkins Service
  • Now try to browse your Jenkins Server on http://<ip address>:8080
  • Cat the content of the file and paste it in the browser
  • Install suggested plugins
  • Create user and you are all set to go
  • In some cases where you are running Jenkins in secure environment(where you have a port restriction, you will not be able to get to the instance), in these cases, we can run Jenkins behind Nginx which act as a reverse proxy
  • Go to the nginx configuration file /etc/nginx/nginx.conf
  • Here we are telling nginx(proxy_pass http://127.0.0.1), any connection request you are getting for root(/) on Port 80 forward it to 8080 port
  • Now there is a small issue, if you click on Manage Jenkins, you will see this reverse proxy error
  • Go directly to this URL and copy paste all the content below proxy_pass
  • Restart Nginx service
  • As Jenkins is up and running now, let’s check a few more things
  • As you can see, default shell assign to Jenkins user is /bin/false which is too restrictive for us
  • /bin/false is just a binary that immediately exits, returning false, when it’s called, so when someone who has false as shell logs in, they’re immediately logged out when false exits.
  • To change the shell from /bin/false to /bin/bash
  • Next step is to generate the ssh key which I can use to login to slave nodes or to the master server itself without supplying the password
  • Then go to
  • One more thing we can do is to allow Jenkins user to run any sudo command without entering the password

Looking forward from you guys to join this journey and spend a minimum an hour every day for the next 100 days on DevOps work and post your progress using any of the below medium.

Reference

AWS Community Builder, Ex-Redhat, Author, Blogger, YouTuber, RHCA, RHCDS, RHCE, Docker Certified,4XAWS, CCNA, MCP, Certified Jenkins, Terraform Certified, 1XGCP