1. 程式人生 > >linux下jenkins安裝及配置-1

linux下jenkins安裝及配置-1

jenkins

版本要求: linux centos 6.8 tomcat8.5.9(可不要) jdk 8u141 jenkins 2.107.1

簡介

?? Continuous Integration(CI)是現代軟件開發領域的基石,它改變了團隊對於整個開發過程的理解。一個好的CI架構能夠使得從開發到部署順序進行,更快地發現和修復bug,最終給客戶帶來更多的價值。每個專業的開發團隊,無論打還是小都應該采用CI。

?? 持續集成是一個監視你版本控制系統改變的軟件。每當代碼改變的時候,這個工具自動的編譯和測試你的應用。如果出現了錯誤,這個工具立即通知開發者,因此開發者能夠立即修復問題。而且它還能自動地監測代碼質量和測試覆蓋率。可視化的代碼質量度量方案能夠鼓勵開發者不斷地改進他們的代碼

?? 持續部署(Continuous Deployment)是自動地講每次成功的構建直接部署到生產環境中。
?? 持續發布(Continuous Delivery)與持續部署(Continuous Deployment)有稍微的不同。持續發布的版本通過了所有的自動化測試和其他的質量檢測手段,可以通過點擊的方式完全自動化的部署到生產環境中,並且用戶就可以直接使用了。然而,這個過程不是自動的,它是由業務決定最好的發布時間而不是由IT直接發布的。


1:安裝

1.1、安裝jdk以及配置環境變量

// 安裝jdk    
[root@svn local]# rpm -ivh jdk-8u77-linux-x64.rpm
//配置環境變量
[root@svn local]# cat /etc/profile.d/jdk.sh
    export JDK_HOME=/usr/java/default
    export PATH=$JDK_HOME/bin:$PATH

1.2、配置jenkins

//下載地址      http://mirrors.jenkins.io/war-stable/
創建目錄 mkdir /usr/local/jenkins
進入目錄 cd !$
下載     wget  http://mirrors.jenkins.io/war-stable/2.107.1/jenkins.war
啟動     nohup java –jar jenkins.war &

1.3、訪問

   防火墻放出8080端口 使用ip+端口+服務名直接訪問  工作目錄:/root/.jenkins  如果想修改密碼什麽的就在這個文件下
    http://xxxx:8080/jenkins/

// 密碼  cat /root/.jenkins/secrets/initialAdminPassword

1.4、安裝maven

// maven下載
http://mirror.bit.edu.cn/apache/maven
wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.5.3/binaries/apache-maven-3.5.3-bin.tar.gz

// 安裝maven 
cd /usr/local

tar xf apache-maven-3.5.2-bin.tar.gz && ln -sv apache-maven-3.5.2 maven
    "maven" -> "apache-maven-3.5.2"

// 配置環境變量
echo "export PATH=$PATH:/usr/local/maven/bin" > /etc/profile.d/maven.sh && source /etc/profile.d/maven.sh

//  查看版本
[root@svn local]# mvn --version
Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T15:58:13+08:00)
Maven home: /usr/local/maven
Java version: 1.8.0_77, vendor: Oracle Corporation
Java home: /usr/java/jdk1.8.0_77/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "2.6.32-642.el6.x86_64", arch: "amd64", family: "unix"

1.5、安裝git

安裝說明: http://blog.51cto.com/xiong51/2088755

2: 配置jenkins_web界面配置

2.1、配置maven

系統管理---全局工具配置(Maven Configuration)配置:

技術分享圖片
技術分享圖片

2.2、配置git

技術分享圖片

2.3、配置jdk , 一定要使用jdk

技術分享圖片


3、maven工程配置

3.1 安裝jenkins插件

菜單路徑:系統管理—管理Jenkins—管理插件。

安裝以下插件:
   1、 Maven Integration plugin
   2、 Subversion Plugin
   3、 Checkstyle Plugin
   4、 Findbugs Plugin
   5、 PMD Plugin
   6、 Warnings Plugin
   7、 Maven Info Plugin
   8、 Maven Repository Scheduled Cleanup Plugin
   9、 Unleash Maven Plugin
   10、 Maven Invoker plugin

3.2 實例:配置jenkins支持maven自動編譯 ( git )

新建一個GIT倉庫用於存放我們的JAVA代碼 git安裝: http://blog.51cto.com/xiong51/2088755

技術分享圖片
技術分享圖片
技術分享圖片
技術分享圖片
技術分享圖片

// 提交源碼到git上 , 提交的時候這裏就有一個pom.xml
技術分享圖片

// 點擊保存之後, 點立即構建
技術分享圖片

// 點擊build 然後查看 控制臺信息就能查看狀態了, 在弄之後一定要先修改maven的鏡像地址
技術分享圖片

// 完成信息
技術分享圖片

3.3 實例:配置jenkins支持maven自動編譯 ( svn )

技術分享圖片
技術分享圖片
技術分享圖片
技術分享圖片

// svn 目錄下一定要是這二個目錄 以及pom.xml文件,
技術分享圖片

技術分享圖片

// 手動的話直接讓.war包放置 tomcat下,然後修改配置文件就能直接啟動了
技術分享圖片

4、實例

4.1:jenkins使用Publish Over SSH插件實現遠程自動部署

鏈接: http://blog.51cto.com/xiong51/2091739

FAQ

F.1、依賴包沒有解析,讀取maven中央倉庫失敗

技術分享圖片

解決辦法:
更換maven國內鏡像地址
修改maven配置文件:
源碼安裝地址:/usr/local/maven/conf/settings.xml
yum應為: rpm -qi maven 查看settings.xml所在路徑 修改 mirror
技術分享圖片

F.2、git 權限錯誤 ( returned status code 128: stdout: )

技術分享圖片

解決辦法:
因為本地的.ssh/id_rsa.pub更新了, 需要在git服務器上/home/git/.ssh/authorized_keys 中在新增 jenkins的id_rsa.pub內容

F.3、ojdbc14-10.2.0.4.0.jar could not find artifact

技術分享圖片

解決方案:
找到這個目錄 /root/.m2/repository/com/oracle/ojdbc14/10.2.0.4.0 將ojdbc14-10.2.0.4.0.ja 復制進去 然後重新構建就行了
下載地址: 鏈接:https://pan.baidu.com/s/1NXoju53Nl7j3yHzR5tLkmQ 密碼:37mr

linux下jenkins安裝及配置-1