centos7安装sonarqube-9.2.4
官方文档地址:https://docs.sonarqube.org/latest/requirements/requirements/
使用 sonarqube 对 java 项目代码进行扫描的时候,java 项目的版本不能低于 sonar 的编译版本。
sonarqube:7.8-community 是 sonar 对 jdk1.8 的最后一个版本,从 7.9 以后 sonar 最低支持版本为 jdk 1.11
要求:Oracle JRE 11 or OpenJDK 11
https://repo.huaweicloud.com/openjdk/11.0.2/
cpu,内存,磁盘IO 越高越好
1.下载压缩包
官网下载最新版压缩包:sonarqube-9.2.4.50792.zip
2.配置java环境
https://repo.huaweicloud.com/openjdk/11.0.2/openjdk-11.0.2_linux-x64_bin.tar.gz
unzip openjdk-11.0.2_linux-x64_bin.tar.gz -C /usr/local
# cat /etc/profile.d/java.sh
#!/bin/bash
export JAVA_HOME=/usr/local/jdk-11.0.2
export JRE_HOME=${JAVA_HOME}
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
3.创建普通用户启动使用
会使用到自带的es,不能使用root用户
useradd admin
su - admin
cd /home/sonarqube-9.2.4.50792/bin/linux-x86-64
./sonar.sh start
./sonar.sh status
./sonar.sh stop
4.设置成系统服务
# cat /etc/systemd/system/sonarqube.service
[Unit]
Description=SonarQube service
After=syslog.target network.target
[Service]
Type=simple
User=admin # 用户
Group=admin # 用户组
PermissionsStartOnly=true
ExecStart=/bin/nohup /usr/local/jdk-11.0.2/bin/java -Xms32m -Xmx32m -Djava.net.preferIPv4Stack=true -jar /home/sonarqube-9.2.4.50792/lib/sonar-application-9.2.4.50792.jar # java路径和项目路径
StandardOutput=syslog
LimitNOFILE=131072
LimitNPROC=8192
TimeoutStartSec=5
Restart=always
SuccessExitStatus=143
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl start sonarqube.service
systemctl enable sonarqube.service
5.访问
地址:http://192.168.2.161:9000
用户名:admin
密码:admin12345678 (默认密码:admin,初次登录需要修改密码)
6.安装中文插件
重启后页面显示就是中文的了
7.安装java项目代码分析插件
8.修改数据库
默认使用的是H2,内嵌的数据库
支持的数据库如下所示:
这里安装使用PostgreSQL13,安装步骤参考地址:https://www.cnblogs.com/sanduzxcvbnm/p/15769935.html
配置文件路径:$SONARQUBE-HOME/conf/sonar.properties
# 停止服务
systemctl stop sonarqube.service
vim /home/sonarqube-9.2.4.50792/conf/sonar.properties
# 使用到的用户名密码和数据库需要新建才行
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
sonar.jdbc.url=jdbc:postgresql://localhost/sonarqube?currentSchema=public
使用navicat登录postgresql数据库,创建为sonarQube专用的sonar用户,用户名为sonar,密码为sonar
创建数据库。数据库名称为:sonarqube
保存成功之后,可以切换为sonar用户登陆。
# 重启服务
systemctl stop sonarqube.service
重启过程中,sonar会使用配置的数据库,并在数据库中自动创建表格。需要一点时间,重启完成之后,可以在数据库当中看到sonar创建的表:
然后访问登录,使用默认的用户名和密码(均为admin)登录