Sonarqube安裝與使用

一、環(huán)境準備

1.系統(tǒng)java環(huán)境:

jdk1.8

2.數(shù)據(jù)庫:

mysql 5.7(mysql 5.6, mysql 8會報錯)
由于mysql數(shù)據(jù)庫max_allowed_packet 默認值過小,導致后期生產(chǎn)的報告寫入數(shù)據(jù)庫時報錯,故建議修改數(shù)據(jù)該值為500M(視項目大小決定),并重啟mysql

3.sonarqube 安裝包下載

https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-7.3.zip

二、安裝運行

1.解壓sonarqube壓縮包

2.修改配置 :

修改 解壓文件路徑/conf/sonar.properties

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

3.準備啟動snoarqube

先用 useradd sonar 創(chuàng)建一個sonar用戶(因為es不支持用root用戶啟動,所以才需要創(chuàng)建sonar用戶),
然后用chown -R sonar:sonar /sonarqube-7.3(sonarqube-7.3這個是官網(wǎng)下載下來解壓的文件)添加權(quán)限。
Centos還需先修改兩個配置:

在/etc/sysctl.conf文件中加入
vm.max_map_count=262144
fs.file-max=65536

然后執(zhí)行sysctl -p使配置生效

在 /etc/security/limits.conf 加入
ulimit -n 65536
ulimit -u 2048
* soft nofile 65536
* hard nofile 65536

然后執(zhí)行source /etc/security/limits.conf

4.啟動sonarqube

切換到新建的sonar用戶 su sonar
到安裝目錄/bin/下,并進入到自己系統(tǒng)版本對應(yīng)目錄
首次執(zhí)行可以控制臺運行,可看到啟動日志

./sonar.sh console 

后臺執(zhí)行命令為

 ./sonar.sh start

停用服務(wù)

sonar ./sonar.sh stop

啟動成功后可以訪問:http://myserver:9000 查看

5.安裝中文語言包

Sonarqube啟動成功后使用默認管理員用戶登陸后臺(admin admin),默認為英文版本,可以找到plugin安裝,然后搜索Chinese Pack,并安裝,然后會提示重啟系統(tǒng),重啟即可。

三、掃描項目并上傳報告

Sonarqube提供了多種掃描代碼方式,詳見官方文檔
https://docs.sonarqube.org/display/SCAN
maven項目建議直接使用SonarQube Scanner for Maven

1.添加mave配置(settings文件)

<settings>
    <pluginGroups>
        <pluginGroup>org.sonarsource.scanner.maven</pluginGroup>
    </pluginGroups>
    <profiles>
        <profile>
            <id>sonar</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <properties>
                <sonar.host.url>
                  http://myserver:9000
                </sonar.host.url>
            </properties>
        </profile>
     </profiles>
</settings>

2.在要掃描的項目主pom文件下運行

mvn sonar:sonar

執(zhí)行成功后再Sonarqube控制面板上http://myserver:9000看到相關(guān)信息。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容