linux下安装SonarQube

1. 准备安装环境

这里安装SonarQube的系统环境是Red Hat Enterprise Linux release 8.7 ,然后将jdk的压缩包(jdk-17.0.2_linux-x64_bin.tar.gz)和sonarQube的压缩包(sonarqube-9.9.0.65466.zip)上传到/usr/local/src目录下,
sonarQube官网下载地址:https://www.sonarsource.com/products/sonarqube/downloads/
sonarQube官网文档地址:
https://docs.sonarqube.org/latest/

初始化环境的脚本init.sh,内容如下,执行脚本 source init.sh 8.7

#!/bin/bash
if [ -z $1 ]
        then echo '$1 is not exists or is empty'
        exit
fi

echo "[BaseOS]
name=BaseOS
baseurl=https://mirrors.aliyun.com/rockylinux/8/BaseOS/\$basearch/os/
gpgcheck=0
enabled=1
gpgkey=https://mirrors.aliyun.com/rockylinux/RPM-GPG-KEY-ANOLIS

[AppStream]
name=AppStream
baseurl=https://mirrors.aliyun.com/rockylinux/8/AppStream/\$basearch/os/
gpgcheck=0
enabled=1
gpgkey=https://mirrors.aliyun.com/rockylinux/RPM-GPG-KEY-ANOLIS

[PowerTools]
name=PowerTools
baseurl=https://mirrors.aliyun.com/rockylinux/8/PowerTools/\$basearch/os/
gpgcheck=0
enabled=1
gpgkey=https://mirrors.aliyun.com/rockylinux/RPM-GPG-KEY-ANOLIS

[Extras]
name=Extras
baseurl=https://mirrors.aliyun.com/rockylinux/8/extras/\$basearch/os/
gpgcheck=0
enabled=1
gpgkey=https://mirrors.aliyun.com/rockylinux/RPM-GPG-KEY-ANOLIS
" > /etc/yum.repos.d/online.repo
echo 'vers:'$1
sed -i "s/8/$1/g" /etc/yum.repos.d/online.repo
yum install -y vim
yum install -y unzip

紧接着设置系统参数vm.max_map_count

vim /etc/sysctl.conf
修改如下内容
vm.max_map_count=262144
查看修改的参数是否生效,如果生效显示如下
sysctl -p

在这里插入图片描述
然后设置配置jdk

先解压
tar -zxvf  /usr/local/src/jdk-17.0.2_linux-x64_bin.tar.gz
添加环境变量
echo 'export JAVA_HOME=/usr/local/src/jdk-17.0.2' >> /etc/profile
echo 'export PATH=$PATH:$JAVA_HOME/bin' >> /etc/profile
生效环境变量
source /etc/profile
检测环境变量是否生效
java -version

在这里插入图片描述

2. 安装postgres数据库

这里就不说明怎么安装postgres数据库,具体安装步骤可以参考这篇博客:https://blog.csdn.net/u010080562/article/details/127349394

3. 安装SonarQube

这里SonarQube是一个java的web项目,依赖elasticsearch和postgres才能运行,因为elasticsearch不能使用root账户运行,所以现在创建用户

创建用户
useradd sonar
echo 'sonar' | passwd --stdin sonar
然后来到/usr/local/src目录解压SonarQube压缩包
unzip sonarqube-9.9.0.65466.zip
然后重命名SonarQube解压后的文件夹名
mv sonarqube-9.9.0.65466 sonarqube
mkdir  /var/sonarqube
将sonarqube文件下的所有内容的属主设置成sonar
chown -R sonar:sonar   /usr/local/src/sonarqube
chown -R sonar:sonar   /var/sonarqube

在这里插入图片描述

切换到sonarqube的conf文件下
cd   /usr/local/src/sonarqube/conf
编辑配置文件sonar.properties,添加如下内容
#sonar运行产生的数据文件和临时文件存放目录
sonar.path.data=/var/sonarqube/data
sonar.path.temp=/var/sonarqube/temp
#访问sonar的IP地址、端口号以及上下文,host就填你部署SonarQube的这台主机或者虚拟机的IP,端口随便定,不要和已有端口冲突就行
sonar.web.host=192.168.225.23
sonar.web.port=8888
sonar.web.context=/
#sonar运行需要连接的postgres参数
sonar.jdbc.username=jamy
sonar.jdbc.password=123456
sonar.jdbc.url=jdbc:postgresql://192.168.227.192:5432/sonarqube?currentSchema=public

在这里插入图片描述

在/usr/local/src/sonarqube/extensions/jdbc-driver目录下创建目录postgresql,用来存放postgresql-42.5.1.jar
cd /usr/local/src/sonarqube/extensions/jdbc-driver
mkdir  postgresql
再把postgresql-42.5.1.jar复制到/usr/local/src/sonarqube/extensions/jdbc-driver/postgresql
cp /usr/local/src/sonarqube/lib/jdbc/postgresql/postgresql-42.5.1.jar  /usr/local/src/sonarqube/extensions/jdbc-driver/postgresql

接下来就来运行sonar

先启动postgres数据库(这个数据库装在本机或是其他虚拟机都可以,只要能连接就行),等会启动sonar会连接数据的
然后切换到sonar用户下
su  sonar
来到sonarqube的bin目录下准备启动
cd /usr/local/src/sonarqube/bin/linux-x86-64
./sonar.sh start
查看启动日志,显示如下图表示启动成功
tail -f /usr/local/src/sonarqube/logs/sonar.log

在这里插入图片描述

4. 使用SonarQube

先关闭防火墙再来访问

浏览器访问地址:192.168.225.23:8888
账户 :admin
密码: admin
首次登录后会要求你修改密码

在这里插入图片描述
在这里插入图片描述
首页是这样的
在这里插入图片描述
如果想要中文显示界面,可以安装中文插件
在这里插入图片描述
继续往下拉,就可以看到这个按钮,点击它
在这里插入图片描述
点击完I understand the risk这个按钮就会出现下面这个界面
在这里插入图片描述
搜索到下面这个插件,点击后面的install来安装插件
在这里插入图片描述
在这里插入图片描述
安装完中文插件,重启SonarQube
在这里插入图片描述
重启完需要重新登录
在这里插入图片描述
现在再看看界面就是中文界面(大体上是中文,有些还是英文的)
在这里插入图片描述
现在看项目啥都没有,需要找个maven项目构建下才能看出效果
在这里插入图片描述
在构建maven项目之前需要再maven的配置文件settings.xml添加点东西

1.在<profiles>标签里面添加一个profile
<profile>
		<id>sonar</id>
		<activation>
			<activeByDefult>true</activeByDefult>
		</activation>
		<properties>
			<sonar.login>admin</sonar.login>
			<sonar.password>123456</sonar.password>
			<sonar.host.url>http://192.168.225.23:8888</sonar.host.url>
		</properties>
	</profile>
2.在<settings>标签末尾添加这个
  <activeProfiles>
    <activeProfile>sonar</activeProfile>
  </activeProfiles>
3.此时打开一个maven项目构建一下,如下图

在这里插入图片描述
在这里插入图片描述
此时再来刷新SonarQube的项目界面,看看有什么不一样
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
到次就结束了,当然SonarQube也可以整合进jenkins,在Jenkins构建项目时使用SonarQube分析代码,后面有时间再更新这一块。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

下雨天的太阳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值