Get your server issues fixed by our experts for a price starting at just 25 USD/Hour. Click here to register and open a ticket with us now!

Author Topic: Jenkins Installation in Linux  (Read 1968 times)

0 Members and 1 Guest are viewing this topic.

balamuralik

  • Guest
Jenkins Installation in Linux
« on: September 29, 2017, 09:47:59 am »
Jenkins

Jenkins is a self-contained Java-based program, ready to run out-of-the-box, with packages for Windows, Mac OS X and other Unix-like operating systems. The project was forked from Hudson after a dispute with Oracle. Runs in servlet Container(Tomcat, Glass fish). Supported by over 400 plugins. In this artical we will known about how to install Jenkins.

Jenkins requires Java to run, Before installing Jenkins make sure you have java installed on your system. Use the following  command to check the version of the installed Java.

[root@localhost ~]# java -version
java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)
[root@localhost ~]#

If java doesn’t found in your machine use following method to install it.

[root@localhost ~]# cd /opt/
[root@localhost opt]#wget --no-cookies --no-check-certificate --header "Cookie:
gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie"
 "http://download.oracle.com/otn-pub/java/jdk/8u91-b14/jdk-8u91-linux-x64.tar.gz "
[root@localhost opt]#tar xzf jdk-8u91-linux-x64.tar.gz
[root@localhost opt]# cd jdk1.8.0_91/
[root@localhost jdk1.8.0_91]# alternatives --install /usr/bin/java java
                               /opt/jdk1.8.0_91/bin/java 2
[root@localhost jdk1.8.0_91]# alternatives --config java

There are 4 programs which provide 'java'.

  Selection    Command
-----------------------------------------------
   1      /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.101-2.6.6.1.el7_2.x86_64/jre/bin/java
*  2      /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.91-0.b14.el7_2.x86_64/jre/bin/java
 + 3      /opt/jdk1.7.0_79/bin/java
   4      /opt/jdk1.8.0_91/bin/java

Enter to keep the current selection
  • , or type selection number: 4
[root@localhost jdk1.8.0_91]#java --version
java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)

The default CentOS version of Java is not compatible with Jenkins. Jenkins typically works best with a Sun implementation of Java, which is not included in CentOS for licensing reasons. so install the latest verison of java from official site. After the successful installation of java install Jenkins package
Installation of Jenkins

For the installation of Jenkins we have to add the Jenkins repository to the yum repos, by using the following commands.

[root@localhost ~]# wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org
/redhat/jenkins.repo
--2016-06-03 01:06:58--  http://pkg.jenkins-ci.org/redhat/jenkins.repo
Resolving pkg.jenkins-ci.org (pkg.jenkins-ci.org)... 52.202.51.185
Connecting to pkg.jenkins-ci.org (pkg.jenkins-ci.org)|52.202.51.185|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 75
Saving to: ‘/etc/yum.repos.d/jenkins.repo’

100%[======================================>] 75          --.-K/s   in 0s

2016-06-03 01:07:00 (5.42 MB/s) - ‘/etc/yum.repos.d/jenkins.repo’ saved [75/75]

[root@localhost ~]# rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
[root@localhost ~]# yum install jenkins
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * atomic: www4.atomicorp.com
 * base: centos.excellmedia.net
 * epel: mirror.wanxp.id
 * extras: centos.excellmedia.net
 * nux-dextop: li.nux.ro
 * updates: centos.excellmedia.net
Resolving Dependencies
--> Running transaction check
---> Package jenkins.noarch 0:2.7-1.1 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

=========================================================================
 Package          Arch            Version            Repository        Size
=========================================================================
Installing:
 jenkins          noarch          2.7-1.1            jenkins           65 M

Transaction Summary
=========================================================================
Install  1 Package

Total download size: 65 M
Installed size: 66 M
Is this ok [y/d/N]: y
Downloading packages:
No Presto metadata available for jenkins
jenkins-2.7-1.1.noarch.rpm                             |  65 MB   02:23
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : jenkins-2.7-1.1.noarch                                   1/1
  Verifying  : jenkins-2.7-1.1.noarch                                   1/1

Installed:
  jenkins.noarch 0:2.7-1.1

Complete!
[root@localhost ~]#

Once the installation of Jenkins completed stop firewall or add the Jenkins port in Firewall in the following way.

[root@localhost ~]# firewall-cmd --zone=public --add-port=8080/tcp --permanent
success
[root@localhost ~]# firewall-cmd --zone=public --add-service=http --permanent
success
[root@localhost ~]# firewall-cmd --reload
success
[root@localhost ~]# firewall-cmd --list-all
public (default, active)
  interfaces: enp2s0
  sources:
  services: dhcpv6-client http ssh
  ports: 8080/tcp
  masquerade: no
  forward-ports:
  icmp-blocks:
  rich rules:
[root@localhost ~]#

Now we can start the Jensis Service by using systemctl as shown below


[root@localhost ~]# systemctl start jenkins
[root@localhost ~]# systemctl status jenkins
● jenkins.service - LSB: Jenkins Continuous Integration Server
   Loaded: loaded (/etc/rc.d/init.d/jenkins)
   Active: active (running) since Fri 2016-06-03 01:27:17 EDT; 9s ago
     Docs: man:systemd-sysv-generator(8)
  Process:6488 ExecStart=/etc/rc.d/init.d/jenkins start(code=exited,status=0/SUCCESS)
   CGroup: /system.slice/jenkins.service
           └─6503 /etc/alternatives/java -Dcom.sun.akuma.Daemon=daemonize...

Jun 03 01:27:12 localhost.localdomain systemd[1]: Starting LSB: Jenkins C...
Jun 03 01:27:13 localhost.localdomain runuser[6489]: pam_unix(runuser:ses...
Jun 03 01:27:17 localhost.localdomain runuser[6489]: pam_unix(runuser:ses...
Jun 03 01:27:17 localhost.localdomain jenkins[6488]: Starting Jenkins [  ...
Jun 03 01:27:17 localhost.localdomain systemd[1]: Started LSB: Jenkins Co...
Hint: Some lines were ellipsized, use -l to show in full.
[root@localhost ~]#

Now we can access the Jenkins webpage by using the Url: http://ipaddress of server:8080 or http://localhost:8080


You can find the password at /var/lib/jenkins/secrets/initialAdminpassword.


Select Jenkins own user database Place a check mark next to Allow users to sign up (If you want to allow users to sign up)  In the sub section of Authorization we have options like Anyone can do anything, Legacy mode, Logged-in users can do anything and Allow anonymous read access. After all the changes do not forget to press the Save button at the bottom of the page.