使用docker 搭建 SonarQube 代碼質(zhì)量管理平臺(tái)

一暑中、概述

Sonar是一個(gè)用于代碼質(zhì)量管理的開源平臺(tái)壹瘟,用于管理源代碼的質(zhì)量,可以從多個(gè)維度檢測(cè)代碼質(zhì)量痒芝,通過插件形式俐筋,可以支持包括java、python严衬、C#澄者、go、scala请琳、kotlin粱挡、JavaScrip、Groovy等二十幾種編程語言的代碼質(zhì)量管理與檢測(cè)俄精。

下面使用docker 啟動(dòng)一個(gè) sonarqube , 便于快速體驗(yàn)此平臺(tái)提供的功能询筏。

二、安裝 SonarQube

你可以下載zip文件的傳統(tǒng)方式安裝SonarQube竖慧,也可以使用docker 鏡像的方式啟動(dòng) SonarQube容器嫌套。

1、 下載zip文件安裝SonarQube https://www.sonarqube.org/downloads/

image.png
  • 下載上圖中的zip文件
  • 解壓縮zip文件圾旨,例如在C:\ sonarqube或/ opt / sonarqube中
  • 運(yùn)行下面的命令啟動(dòng) SonarQube Server
# 在windows中踱讨,執(zhí)行如下命令
C:\sonarqube\bin\windows-x86-64\StartSonar.bat

# 在linux等其他系統(tǒng)中執(zhí)行如下命令
/opt/sonarqube/bin/[OS]/sonar.sh console

2、使用docker 安裝 SonarQube

image.png
  • 在docker hub 中找到 sonarqube
  • 使用 docker pull sonarqube 拉取鏡像
  • 運(yùn)行下面的命令啟動(dòng) SonarQube Server
docker run -d --name sonarqube -e SONAR_ES_BOOTSTRAP_CHECKS_DISABLE=true -p 9000:9000 sonarqube:latest

3砍的、登錄SonarQube Server

實(shí)例啟動(dòng)并運(yùn)行后痹筛,使用系統(tǒng)管理員憑據(jù)登錄到 http://localhost:9000

  • 用戶名:admin
  • 密碼:admin

登錄成功后需要重置密碼


重置密碼

三、分析項(xiàng)目

登錄成功后,如下圖所示:


image.png

1帚稠、安裝中文包

image.png

中文包安裝成功后如下圖


image.png

2谣旁、分析項(xiàng)目

  • 單擊創(chuàng)建新項(xiàng)目按鈕。


    image.png
  • 給您的項(xiàng)目一個(gè)項(xiàng)目鍵和一個(gè)顯示名稱滋早,然后單擊設(shè)置按鈕榄审。


    image.png
  • 在“提供令牌”下,選擇“生成令牌”馆衔。為您的令牌命名瘟判,點(diǎn)擊生成按鈕怨绣,然后點(diǎn)擊繼續(xù)角溃。


    image.png
  • 在“對(duì)項(xiàng)目運(yùn)行分析”下選擇項(xiàng)目的主要語言,然后按照說明分析項(xiàng)目篮撑。在這里减细,您將在代碼上下載并執(zhí)行掃描程序(如果您使用的是Maven或Gradle,則會(huì)自動(dòng)下載該掃描程序)赢笨。


    image.png

使用Maven執(zhí)行SonarQube分析是非常簡(jiǎn)單的未蝌。只需要在你的項(xiàng)目目錄下執(zhí)行如下命令。

mvn sonar:sonar \
  -Dsonar.projectKey=test \
  -Dsonar.host.url=http://localhost:9000 \
  -Dsonar.login=a98ea942c2c4bd02b1621ee26653fe1b7007d83d

分析完成后茧妒,頁面會(huì)自動(dòng)刷新萧吠,您將在SonarQube上看到第一個(gè)分析:


image.png

image.png

四、遇到的問題

執(zhí)行上面的mvn命令桐筏,出現(xiàn)如下問題:


image.png
[ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.8.0.2131:sonar (default-cli) on project quarkus-demo: Your project contains .java files, please provide
 compiled classes with sonar.java.binaries property, or exclude them from the analysis with sonar.exclusions property.

原因:項(xiàng)目只包含 .java 文件纸型,沒有編譯成 .class 文件
解決:需要編譯先項(xiàng)目,先執(zhí)行 mvn pakage 再執(zhí)行 mvn sonar: sonar ,也可以合并執(zhí)行下面的命令

mvn package sonar:sonar \
  -Dsonar.projectKey=test \
  -Dsonar.host.url=http://localhost:9000 \
  -Dsonar.login=a98ea942c2c4bd02b1621ee26653fe1b7007d83d

參考文章
sonarqube 鏡像倉(cāng)庫(kù)地址
docker 啟動(dòng) sonarqube 官方文檔

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末梅忌,一起剝皮案震驚了整個(gè)濱河市狰腌,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌牧氮,老刑警劉巖琼腔,帶你破解...
    沈念sama閱讀 218,451評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異踱葛,居然都是意外死亡丹莲,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,172評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門尸诽,熙熙樓的掌柜王于貴愁眉苦臉地迎上來甥材,“玉大人,你說我怎么就攤上這事逊谋±薮铮” “怎么了?”我有些...
    開封第一講書人閱讀 164,782評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)板鬓。 經(jīng)常有香客問我悲敷,道長(zhǎng),這世上最難降的妖魔是什么俭令? 我笑而不...
    開封第一講書人閱讀 58,709評(píng)論 1 294
  • 正文 為了忘掉前任后德,我火速辦了婚禮,結(jié)果婚禮上抄腔,老公的妹妹穿的比我還像新娘瓢湃。我一直安慰自己,他們只是感情好赫蛇,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,733評(píng)論 6 392
  • 文/花漫 我一把揭開白布绵患。 她就那樣靜靜地躺著,像睡著了一般悟耘。 火紅的嫁衣襯著肌膚如雪落蝙。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,578評(píng)論 1 305
  • 那天暂幼,我揣著相機(jī)與錄音筏勒,去河邊找鬼。 笑死旺嬉,一個(gè)胖子當(dāng)著我的面吹牛管行,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播邪媳,決...
    沈念sama閱讀 40,320評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼捐顷,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了悲酷?” 一聲冷哼從身側(cè)響起套菜,我...
    開封第一講書人閱讀 39,241評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎设易,沒想到半個(gè)月后逗柴,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,686評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡顿肺,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,878評(píng)論 3 336
  • 正文 我和宋清朗相戀三年戏溺,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片屠尊。...
    茶點(diǎn)故事閱讀 39,992評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡旷祸,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出讼昆,到底是詐尸還是另有隱情托享,我是刑警寧澤,帶...
    沈念sama閱讀 35,715評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站闰围,受9級(jí)特大地震影響赃绊,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜羡榴,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,336評(píng)論 3 330
  • 文/蒙蒙 一碧查、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧校仑,春花似錦忠售、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,912評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至邢滑,卻和暖如春腐螟,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背困后。 一陣腳步聲響...
    開封第一講書人閱讀 33,040評(píng)論 1 270
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留衬廷,地道東北人摇予。 一個(gè)月前我還...
    沈念sama閱讀 48,173評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像吗跋,于是被迫代替她去往敵國(guó)和親侧戴。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,947評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容