1 安裝前准備
Java (Oracle JRE 8 or OpenJDK 8)
MySQL5.6 or MySQL5.7,具體可參考Centos6.9安裝MySQL5.6
SonarQube7.6,Community Edition版本下載地址:https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-7.6.zip
2 MySQL建庫
2.1 登錄到MySQL
mysql -u root -p
輸入正確密碼,進入MySQL。
2.2 創建數據庫和用戶並授權
-- 數據庫 CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci; -- 用戶 CREATE USER 'sonar' IDENTIFIED BY 'sonar'; -- 權限 GRANT ALL ON sonar.* TO 'sonar'@'%' IDENTIFIED BY 'sonar'; GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'sonar'; FLUSH PRIVILEGES;

3 安裝SonarQube
3.1 使用xftp把安裝包上傳到服務器/tmp目錄
3.2 把包拷貝到/opt目錄下
cp sonarqube-7.6.zip /opt
3.3 到/opt目錄下解壓該文件
unzip sonarqube-7.6.zip
3.4 重命名解壓后的文件夾名
mv sonarqube-7.6 sonarqube
4 數據庫連接配置
進入/opt/sonarqube/conf目錄下,編輯sonar.properties文件,最底添加如下內容:
sonar.jdbc.username=sonar sonar.jdbc.password=sonar sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
5 啟動sonarqube
進入/opt/sonarqube/bin目錄下,執行:
/opt/sonarqube/bin/linux-x86-64/sonar.sh console
若啟動出現如下錯誤:

去/opt/sonarqube/logs目錄下查看日志:

報錯原因:因為安全問題elasticsearch不讓用root用戶直接運行。
解決辦法:新加新用戶,具體見下面第6步操作。
6 創建Centos用戶
#創建用戶組 groupadd sonarqube #創建用戶 useradd sonarqube -g sonarqube -p sonarqube #授權程序目錄 chown -R sonarqube.sonarqube /opt/sonarqube/
7 系統切換到新用戶運行
su sonarqube
重復第5步操作,啟動sonarqube服務。
8 訪問服務
打開網址http://localhost:9000
使用System Administrator credentials (admin/admin) 登錄

9 服務管理
9.1 修改如下文件:
vim /etc/init.d/sonar
9.2 添加如下內容:
#!/bin/sh # # rc file for SonarQube # # chkconfig: 345 96 10 # description: SonarQube system # ### BEGIN INIT INFO # Provides: sonar # Required-Start: $network # Required-Stop: $network # Default-Start: 3 4 5 # Default-Stop: 0 1 2 6 # Short-Description: SonarQube system # Description: SonarQube system ### END INIT INFO su sonarqube -lc "/opt/sonarqube/bin/linux-x86-64/sonar.sh $*"
9.3 授權:
chmod 755 /etc/init.d/sonar
9.4 設置自啟動:
chkconfig --add sonar
9.5 啟動服務:
/etc/init.d/sonar start #啟動服務
/etc/init.d/sonar restart #重啟服務

9.6 查看進程:
netstat -nltp

10 安裝中文插件
默認顯示英文,安裝chinese pack插件,讓界面語言顯示中文:
Configuration配置 -> Marketplace應用市場 -> 搜索"chinese Pack" -> Install安裝插件

彈出重啟提示 ->選擇Restart重啟應用 -> 再登錄就是中文界面

11 其他問題
啟動sonarqube服務時,若報如下錯誤:

解決辦法:最新版本的Sonarqube7.9.1 LTS Community Edition版本需要Java 11支持。
