SonarQube在CentOS上的安裝

westfly發表於2016-11-24

1 簡介

SonarQube 是一個用於程式碼質量管理的開放平臺。通過外掛機制,Sonar 可以整合不同的測試工具,程式碼分析工具,以及持續整合工具。與持續整合工具(例如 Hudson/Jenkins 等)不同,Sonar 並不是簡單地把不同的程式碼檢查工具結果(例如 FindBugs,PMD 等)直接顯示在 Web 頁面上,而是通過不同的外掛對這些結果進行再加工處理,通過量化的方式度量程式碼質量的變化,從而可以方便地對不同規模和種類的工程進行程式碼質量管理。

2. 安裝準備

1)SonarQube 的版本多,需要提前注意一下,選擇合適的版本。從 http://www.sonarqube.org/downloads/  中看到,當前SonarQube有5.6的長期支援版本和SonarQube 6.1 的新版本,但5.6和6.1的程式碼可能差別不是特別大,有些bug兩個版本都被修復的。

2)無論你選擇哪個版本,都依賴於Java1.8和MySQL5.6 以上的版本(如果你想用起來的話)。

     Java下載JDK包即可,MySQL的下載從官方網站上下載

3. 安裝

1)安裝Java

解壓即可用,設定JAVA_HOME

export JAVA_HOME="/search/env/jdk"
export PATH=$PATH:/sbin:$JAVA_HOME/bin/
export CLASSPATH=./:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

2)安裝MySQL

    參考上一篇文章,安裝好後,設定sonar用的使用者名稱和資料庫

create user 'sonar'@'localhost' identified by 'sonar@2016';
CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
grant all privileges on sonar.* to 'sonar'@'localhost';

3)安裝SonarQube

    本文選用的是5.6.3版本的,解壓到本地即可,修改conf,

sonar.jdbc.username=sonar
sonar.jdbc.password=sonar@2016
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false

#可以用預設的,不修改
sonar.web.host=192.0.0.1
sonar.web.port=80
sonar.web.context=/sonar

三個需要注意的地方,後面引數不用有引號,新增useSSL=false引數能夠避免SSL報錯。

context的意思是,尋訪的path,如上面的配置訪問的url就是

http://192.0.0.1:80/sonar

啟動服務

sonarqube/bin/linux-x86-64/sonar.sh start

訪問url,用管理員(admin/admin)賬號登陸,找到外掛中心(被隱藏得有些深),安裝中文外掛包和升級其它外掛。

如果沒有網路,可以將對應的jar下載下來,放到extensions/plugins下,重啟服務即可,plugin有問題的話,可能啟動不起來,

看下log/sonar.log檢視錯誤日誌即可。

4. 安裝 sonar-scanner

SonarQube是一個UI,還需要其他工具的配合,其中sonar-scanner就是重要的一個。

 

參考文獻

http://jaminzhang.github.io/ci/cd/Sonar-Installation/

相關文章