1. 程式人生 > >Jenkins入門教程之linux下安裝配置jenkins(rpm方式)

Jenkins入門教程之linux下安裝配置jenkins(rpm方式)

一、jenkins安裝

Jenkins 是什麼?

    Jenkins 是一個可擴充套件的持續整合引擎。

主要用於:

    持續、自動地構建/測試軟體專案。 

    監控一些定時執行的任務。

Jenkins 擁有的特性包括:

    易於安裝-只要把jenkins.war部署到servlet容器,不需要資料庫支援。 

    易於配置-所有配置都是通過其提供的web介面實現。 

    整合RSS/E-mail通過RSS釋出構建結果或當構建完成時通過e-mail通知。 

    生成JUnit/TestNG測試報告。 

    分散式構建支援Jenkins能夠讓多臺計算機一起構建/測試。 

    檔案識別:Jenkins能夠跟蹤哪次構建生成哪些jar,哪次構建使用哪個版本的jar等。 

    外掛支援:支援擴充套件外掛,你可以開發適合自己團隊使用的工具。

Jenkins 安裝部署方式(以下4種方式後續都會寫到):

    直接下載war包jenkins.war部署到servlet容器中,如tomcat,下載地址https://jenkins.io/download

    下載war包使用命令直接執行war包,java -jar jenkins.war

    windows下載zip包解壓執行jenkins.exe即可安裝成windows服務

    下載rpm包在linux下安裝並配置服務

安裝步驟:

1、下載  https://pkg.jenkins.io/redhat-stable/

https://img-blog.csdn.net/20180627223103828?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pqaF83NDYxNDAxMjk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70https://img-blog.csdn.net/20180627223115398?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pqaF83NDYxNDAxMjk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70https://img-blog.csdn.net/20180627223128167?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pqaF83NDYxNDAxMjk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70https://img-blog.csdn.net/20180627223141738?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pqaF83NDYxNDAxMjk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

2、安裝

sudo rpm -ih jenkins-2.73.2-1.1.noarch.rpm

https://img-blog.csdn.net/20180627223236554?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pqaF83NDYxNDAxMjk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

自動安裝完成之後: 

/usr/lib/jenkins/jenkins.war    WAR包 

/etc/sysconfig/jenkins       配置檔案

/var/lib/jenkins/       預設的JENKINS_HOME目錄

/var/log/jenkins/jenkins.log    Jenkins日誌檔案

3、啟動jenkins

sudo service jenkins start

https://img-blog.csdn.net/20180627223402840?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pqaF83NDYxNDAxMjk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

4、訪問jenkins ip+埠(圖1  預設8080)第一次登入Jenkins會要求解鎖,開啟紅色標記中的路徑,取出password,填入上圖,點選continue(圖2圖3)

圖1

https://img-blog.csdn.net/20180627223451964?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pqaF83NDYxNDAxMjk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

圖2

https://img-blog.csdn.net/20180627223727989?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pqaF83NDYxNDAxMjk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

圖3

https://img-blog.csdn.net/20180627223745696?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pqaF83NDYxNDAxMjk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

輸入完成後會提示安裝自定義外掛還是推薦外掛,此處我選擇推薦外掛,安裝過程可能由於網路原因導致失敗,後續失敗的可以在系統設定-外掛管理裡面解除安裝或者重新安裝即可。

https://img-blog.csdn.net/20180627224003530?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pqaF83NDYxNDAxMjk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

等待安裝。。。。。

https://img-blog.csdn.net/20180627224016387?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pqaF83NDYxNDAxMjk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70https://img-blog.csdn.net/20180627224047686?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pqaF83NDYxNDAxMjk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

選擇continue繼續設定管理員

https://img-blog.csdn.net/20180627224105858?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pqaF83NDYxNDAxMjk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

5、建立使用者並登陸

https://img-blog.csdn.net/20180627224209292?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pqaF83NDYxNDAxMjk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70https://img-blog.csdn.net/20180627224224450?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pqaF83NDYxNDAxMjk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70

好了,到這裡linux下安裝配置jenkins教程就結束了,後續會更新jenkins中配置jdk、svn、maven、git,並且構建web專案和spring boot專案。

二、jenkins安裝後登陸空白問題

問題場景:jenkins配置許可權不對導致無法登陸或者空白頁面解決辦法

edit the /var/lib/jenkins/config.xml  and replace the following two xml tags with the below version. Then restart your server.

  1. <authorizationStrategy class="hudson.security.AuthorizationStrategy$Unsecured"/>
  2.   <securityRealm class="hudson.security.SecurityRealm$None"/>