欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Docker搭建代碼檢測(cè)平臺(tái)SonarQube并檢測(cè)maven項(xiàng)目的流程

 更新時(shí)間:2020年05月20日 09:09:26   作者:南瓜慢說(shuō)  
這篇文章主要介紹了Docker搭建代碼檢測(cè)平臺(tái)SonarQube并檢測(cè)maven項(xiàng)目,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

1 前言

良好的代碼習(xí)慣是一個(gè)優(yōu)秀程序員應(yīng)該具備的品質(zhì),但靠人的習(xí)慣與記憶來(lái)保證代碼質(zhì)量,始終不是一件靠譜的事。在計(jì)算機(jī)行業(yè)應(yīng)該深知,只要是人為的,都會(huì)有操作風(fēng)險(xiǎn)。本文講解如何通過(guò)Docker搭建代碼檢測(cè)平臺(tái)SonarQube,并使用它來(lái)檢測(cè)maven項(xiàng)目的代碼。

2 Docker安裝SonarQube

2.1 安裝

通過(guò)Docker安裝,方便快捷,不需要時(shí)直接刪掉容器和鏡像就好了。

# 拉取Sonar鏡像
docker pull sonarqube:8.3.1-community
# 運(yùn)行實(shí)例
docker run --name sonarqube -p 9000:9000 -d sonarqube:8.3.1-community

接著訪問(wèn):http://localhost:9000/ 就可以了,默認(rèn)管理員用戶(hù)和密碼為:admin/admin。

這里選擇免費(fèi)的社區(qū)版Community,另外還有DeveloperEnterprise等收費(fèi)版本,功能更強(qiáng)大,具體差別如下:

2.2 指定數(shù)據(jù)庫(kù)

一般我們會(huì)自己?jiǎn)?dòng)一個(gè)數(shù)據(jù)庫(kù)如Oracle、MySQLPostgreSQL。相關(guān)系統(tǒng)信息可以在Administration-System查看,我們不指定的話,默認(rèn)是使用內(nèi)嵌的H2數(shù)據(jù)庫(kù)。如果要指定其它數(shù)據(jù)庫(kù),啟動(dòng)Docker時(shí)需要指定:

-e SONARQUBE_JDBC_USERNAME="xxx" \
-e SONARQUBE_JDBC_PASSWORD="***" \
-e SONARQUBE_JDBC_URL="jdbc:mysql://xxx"

使用H2數(shù)據(jù)庫(kù)有會(huì)以下限制:

內(nèi)嵌數(shù)據(jù)庫(kù)只能用于測(cè)試場(chǎng)景。內(nèi)嵌數(shù)據(jù)庫(kù)無(wú)法擴(kuò)展,也無(wú)法升級(jí)到新版本的SonarQube,并且不能支持將你的數(shù)據(jù)遷移至其他數(shù)據(jù)庫(kù)引擎。

所以建議實(shí)際使用時(shí),不要使用內(nèi)嵌的H2數(shù)據(jù)庫(kù)。

2.3 進(jìn)入容器

通過(guò)命令:

$ docker exec -it 容器ID bash

bash-5.0# ls
COPYING  bin   conf   data   elasticsearch extensions  lib   logs   temp   web
bash-5.0# 

可以進(jìn)入SonarQube容器。在目錄/opt/sonarqube可以查看配置文件、插件、數(shù)據(jù)文件和日志文件等,實(shí)際使用應(yīng)該映射到宿主機(jī)的目錄上,這樣重新啟動(dòng)一個(gè)實(shí)例,數(shù)據(jù)和配置都還在。

2.4 安裝插件

SonarQube提供了強(qiáng)大的插件管理功能,以中文語(yǔ)言包為示例,講解如何安裝插件:

Administration-Marketplace-Plugins,在搜索框輸入Chinese就可以選擇安裝了。

當(dāng)狀態(tài)顯示為Install Pending時(shí),說(shuō)明插件安裝完成,點(diǎn)擊Restart Server即可生效。

3 通過(guò)maven檢測(cè)代碼

3.1 通過(guò)賬號(hào)密碼使用

指定SonarQube平臺(tái)的地址,并指定用戶(hù)名和密碼,就能檢測(cè)代碼了,具體命令如下:

mvn clean verify sonar:sonar -Dsonar.host.url=http://localhost:9000 -Dsonar.login=admin -Dsonar.password=admin

3.2 通過(guò)Token令牌使用

當(dāng)然,直接使用admin并暴露密碼并不是一個(gè)好的習(xí)慣,可以通過(guò)配置-權(quán)限-用戶(hù)來(lái)創(chuàng)建用戶(hù),并創(chuàng)建令牌。

復(fù)制令牌:9656c84090b2481db6ea97b6d14d87d546bff619。

這樣,就可以通過(guò)令牌來(lái)操作了:

mvn clean verify sonar:sonar -Dsonar.host.url=http://localhost:9000 -Dsonar.login=9656c84090b2481db6ea97b6d14d87d546bff619

執(zhí)行命令后,就會(huì)在界面上自動(dòng)新建了一個(gè)項(xiàng)目,并給出檢測(cè)結(jié)果:

Sonar提供了許多指標(biāo)如測(cè)試覆蓋率、復(fù)雜度等,這能大大幫助我們寫(xiě)出更好的代碼:

4 總結(jié)

SonarQube功能強(qiáng)大,是DevOps的重要工具之一,需要了解和掌握。

到此這篇關(guān)于Docker搭建代碼檢測(cè)平臺(tái)SonarQube并檢測(cè)maven項(xiàng)目的文章就介紹到這了,更多相關(guān)Docker搭建代碼檢測(cè)平臺(tái)SonarQube并檢測(cè)maven項(xiàng)目?jī)?nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Docker容器無(wú)法停止刪除的解決方案

    Docker容器無(wú)法停止刪除的解決方案

    這篇文章主要介紹了Docker容器無(wú)法停止刪除的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-03-03
  • docker-compose安裝RabbitMQ及插件操作步驟

    docker-compose安裝RabbitMQ及插件操作步驟

    這篇文章主要為大家介紹了docker-compose安裝RabbitMQ及插件操作步驟詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • 云原生教程之使用Docker部署webssh工具sshwifty

    云原生教程之使用Docker部署webssh工具sshwifty

    Sshwifty是一個(gè)開(kāi)源的WebSSH?&?WebTelnet客戶(hù)端,下面這篇文章主要給大家介紹了關(guān)于云原生教程之使用Docker部署webssh工具sshwifty的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-03-03
  • 使用docker部署java項(xiàng)目運(yùn)行環(huán)境的實(shí)現(xiàn)步驟

    使用docker部署java項(xiàng)目運(yùn)行環(huán)境的實(shí)現(xiàn)步驟

    本文主要介紹了使用docker部署java項(xiàng)目運(yùn)行環(huán)境的實(shí)現(xiàn)步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • docker remote api一鍵TLS加密的實(shí)現(xiàn)

    docker remote api一鍵TLS加密的實(shí)現(xiàn)

    本文主要介紹了docker remote api一鍵TLS加密的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • 利用docker搭建LAMP運(yùn)行環(huán)境教程詳解

    利用docker搭建LAMP運(yùn)行環(huán)境教程詳解

    LAMP相信對(duì)大家來(lái)說(shuō)都不陌生, Docker是一個(gè)開(kāi)源的引擎,可以輕松的為任何應(yīng)用創(chuàng)建一個(gè)輕量級(jí)的、可移植的、自給自足的容器,所以這篇文章給大家介紹利用docker快速搭建LAMP運(yùn)行環(huán)境的方法,有需要的朋友們可以參考借鑒,下面來(lái)一起看看吧。
    2016-10-10
  • 一文搞定Docker安裝ElasticSearch的過(guò)程

    一文搞定Docker安裝ElasticSearch的過(guò)程

    通過(guò)本文可以幫助大家快速學(xué)習(xí)Docker安裝ElasticSearch的過(guò)程,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2021-08-08
  • Docker啟動(dòng)容器報(bào)錯(cuò):Ports are not available的解決方案

    Docker啟動(dòng)容器報(bào)錯(cuò):Ports are not available的解決方案

    這篇文章主要介紹了Docker啟動(dòng)容器報(bào)錯(cuò):Ports are not available的解決方案,Docker 將容器程序的端口號(hào)映射到宿主機(jī)的端口號(hào),是一個(gè) NAT 過(guò)程,這個(gè)過(guò)程可能會(huì)因?yàn)榕c Windows NAT 服務(wù)沖突而失效,文中有詳細(xì)的解決方案,需要的朋友可以參考下
    2024-03-03
  • Docker教程:使用容器(簡(jiǎn)單示例)

    Docker教程:使用容器(簡(jiǎn)單示例)

    今天小編就為大家分享一篇關(guān)于Docker教程:使用容器(簡(jiǎn)單示例),小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-10-10
  • docker容器內(nèi)網(wǎng)絡(luò)請(qǐng)求緩慢問(wèn)題解決

    docker容器內(nèi)網(wǎng)絡(luò)請(qǐng)求緩慢問(wèn)題解決

    在使用docker的過(guò)程中發(fā)現(xiàn)了幾個(gè)問(wèn)題,在docker里進(jìn)行的網(wǎng)絡(luò)請(qǐng)求經(jīng)常會(huì)失敗,這篇文章主要介紹了docker容器內(nèi)網(wǎng)絡(luò)請(qǐng)求緩慢問(wèn)題解決
    2019-01-01

最新評(píng)論