centos7簡單搭建並漢化代碼質量檢查工具:SonarQube(7.4版本)

前言

近期需要搭建一個SonarQube服務。目前SonarQube版本已經更新到7.9版本了,但是爲了穩定性,降低風險,選擇了安裝7.4版本

環境說明

服務 版本 說明
服務器系統 centos7.4/64位 大型項目一般要求8核/16G內存,個人/小項目至少2G內存
JDK JDK8 7.4版本的SonarQube要求jdk8版本
MYSQL JDK8 7.4版本MySQL >=5.6 && <8.0 (在配置文件sonar.properties也有提示)
SonarQube 7.4 當前最新版7.9

上述安裝包我放在百度網盤,可以直接在網盤下載哦:
鏈接:https://pan.baidu.com/s/11xLgBwU8HnB5sUZ63Hw8MQ
提取碼:h048
centos7簡單搭建並漢化代碼質量檢查工具:SonarQube(7.4版本)

安裝步驟

1、安裝jdk8

命令:

# tar xf jdk-8u151-linux-x64.tar.gz -C /usr/local/
# echo -e "export JAVA_HOME=/usr/local/jdk1.8.0_151\n export JRE_HOME=\${JAVA_HOME}/jre\n export CLASSPATH=.:\${JAVA_HOME}/lib:\${JRE_HOME}/lib\n export  PATH=\${JAVA_HOME}/bin:\$PATH" >>/etc/profile
# source /etc/profile
# java -version

2、配置elasticsearch需要的環境

因爲SonarQube服務裏面包含有elasticsearch服務,所以這兩個文件是要修改的。翻了好多網友的博客都沒有提到這一步,但是官網是有明確要求的:

# echo -e "* soft nofile 65536\n* hard nofile 131072\n* soft nproc 2048\n* hard nproc 4096\n" >>/etc/security/limits.conf
# echo "vm.max_map_count=655360" >>/etc/sysctl.conf
# sysctl -p

3、安裝MySQL

MySQL我是在本機安裝的,也有看到網友說MySQL和SonarQube服務安裝在同一臺機器會報錯,說連不上數據庫,我的沒有這個問題。
MySQL安裝步驟略
裝好之後,創建數據庫並且授權(創建一個空的數據庫就行,不需要創建表。表會在啓動的時候程序自動創建):

> CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
> grant all privileges on sonar.* to "sonar"@"%" identified by "sonar";
> flush privileges;

4、安裝SonarQube7.4

4.1 創建專用用戶
因爲elasticsearch不能用root啓動,因此這裏也要創建一個專用用戶來對SonarQube服務進行管理

# useradd sonar;echo "123456"|passwd --stdin sonar

4.2 下載安裝包並解壓,修改安裝目錄權限

# wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-7.4.zip
# unzip sonarqube-7.4.zip   #不要把壓縮包解壓到以數字開頭的目錄中
# mv sonarqube-7.4 /usr/local/
# chown sonar:sonar -R /usr/local/sonarqube-7.4/

4.3 創建elasticsearch數據存儲目錄並授權

# mkdir /data/soarqube/{data,temp} -p
# chown sonar:sonar -R /data/soarqube/

4.4 修改配置文件
/usr/local/sonarqube-7.4/conf sonar.properties文件默認註釋掉了所有的內容,主要修改下面這幾行(看到很多網友的博客只配置了3行數據庫信息,研究了官網之後,增加/修改了後面三行提升性能的配置。只是簡單實驗的話,配置前面3行數據庫就可以了):

[root@test104 conf]# cat sonar.properties|grep -v ^#|grep -v ^$
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
sonar.jdbc.url=jdbc:mysql://10.0.0.104:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
sonar.web.javaOpts=-server   #這一行內容需要手動添加,可以添加到第100行,是爲了優化web server,激活服務器模式,提升和保障性能的
##下面這兩行是配置elasticsearch的存儲目錄,默認是在sonar安裝目錄下會創建一個data和temp目錄,但是官方並不推薦使用默認配置,爲了更好的I/O性能以及以後的版本升級,推薦將這兩個目錄另外配置到專門的數據目錄下:
sonar.path.data=/data/soarqube/data
sonar.path.temp=/data/soarqube/temp
[root@test104 conf]# 

4.5 啓動服務

[root@test104 conf]# su sonar
[sonar@test104 conf]$ cd /usr/local/sonarqube-7.4/bin/linux-x86-64/
[sonar@test104 linux-x86-64]$ ./sonar.sh start

啓動完成之後,能看到這4個進程:
centos7簡單搭建並漢化代碼質量檢查工具:SonarQube(7.4版本)

在/usr/local/sonarqube-7.4/logs/目錄會在運行啓動腳本之後,就會按照啓動的順序,生成下面的幾個日誌,如果啓動失敗,就可以來這裏看日誌找原因:
centos7簡單搭建並漢化代碼質量檢查工具:SonarQube(7.4版本)

啓動這4個進程需要一定的時間,開啓sonar.log日誌的實時輸出,看到出現下面的內容,說明整個服務就啓動好了:
centos7簡單搭建並漢化代碼質量檢查工具:SonarQube(7.4版本)

4.6 服務驗證
查看web端口起來了:
centos7簡單搭建並漢化代碼質量檢查工具:SonarQube(7.4版本)

在瀏覽器訪問web地址:http://10.0.0.104:9000/about 出現下面的界面:
centos7簡單搭建並漢化代碼質量檢查工具:SonarQube(7.4版本)

到這裏搭建就完成了。下面是額外需求:漢化。

5 安裝漢化包

5.1 登錄SonarQube服務,搜索漢化包

點擊“Log in”登錄,默認的用戶名密碼是admin/admin
centos7簡單搭建並漢化代碼質量檢查工具:SonarQube(7.4版本)

centos7簡單搭建並漢化代碼質量檢查工具:SonarQube(7.4版本)

因爲現在還不使用SonarQube,所以Analyze a project這一步可以先跳過,以後用的時候再來設置:
centos7簡單搭建並漢化代碼質量檢查工具:SonarQube(7.4版本)

然後點擊界面上的”Adminstration“,選擇下方的“Marketplace”,在下面的Plugins一欄,搜索“Chinese Pack”,搜索出來之後,點擊insatll進行安裝:
centos7簡單搭建並漢化代碼質量檢查工具:SonarQube(7.4版本)

安裝完之後,點擊restart重啓服務:
centos7簡單搭建並漢化代碼質量檢查工具:SonarQube(7.4版本)

之後重新登錄,就是中文界面了:
centos7簡單搭建並漢化代碼質量檢查工具:SonarQube(7.4版本)

centos7簡單搭建並漢化代碼質量檢查工具:SonarQube(7.4版本)

到此,7.4版本的SonarQube已經搭建、漢化工作完畢

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章