二进制部署sonarqube7.0及集成jenkins

一、环境准备

centos7
mysql-5.7
jdk-1.8.0_144
sonarqube-7.0
sonar-scanner-4.0.0.1744
sonarqube7版本之后不再支持mysql

二、soanrqube下载地址

 https://www.sonarqube.org/downloads/
 https://binaries.sonarsource.com/Distribution/sonarqube/

三、新增sonar用户

useradd sonar
password sonar

四、使用docker安装mysql(方便)

准备映射目录

mkdir -p /home/sonar/docker/mysql/conf
mkdir -p /home/sonar/docker/mysql/data
mkdir -p /home/sonar/docker/mysql/logs
chown -R sonar.sonar  /home/sonar/
docker run -d --name mysql  \
-v /home/sonar/docker/mysql/conf:/etc/mysql/conf.d:Z \
-v /home/sonar/docker/mysql/data:/var/lib/mysql:z \
-v /home/sonar/docker/mysql/logs:/log:z \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=123 \
192.168.241.140:5000/mysql:latest
##注意:我这里使用的mysql镜像为5.7.19,使用的是本地docker仓库,改的tag
数据库配置
//创建数据库
CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
//创建用户
CREATE USER 'sonar' IDENTIFIED BY 'sonar';
//授权sonar用户并设置密码
GRANT ALL ON sonar.* TO 'sonar'@'%' IDENTIFIED BY 'sonar';
GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'sonar';
//刷新
FLUSH PRIVILEGES;

五、JDK安装省略

六、sonarqube安装

解压sonarqube-7.0.zip
unzip sonarqube-7.0.zip -d /usr/local/
创建软连接
cd /usr/local/
ln -s sonarqube-7.0/ sonarqube
更改权限
chown -R sonar.sonar sonarqube
编辑配置文件
vim /usr/local/sonarqube/conf/sonar.properties
sonar.jdbc.username=sonar
sonar.jdbc.password=123
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
以sonar用户启动sonarqube
 su - sonar /usr/local/sonarqube/bin/linux-x86-64/sonar.sh start
访问http://192.168.241.140:9000,出现一下界面,则安装完成。初始用户/密码:admin/admin

在这里插入图片描述

下载插件,配置–>应用市场。不过在线下载超级慢,建议需要什么插件自行去下载。

在这里插入图片描述

注意插件的版本号,很多版本不兼容

在这里插入图片描述

下载地址:https://github.com/SonarSource
替换安装插件:把下载的插件替换到目录/usr/local/sonarqube/extensions/plugins,完成之后重启sonarqube即可。

七、安装客户端扫描工具sonar-scanner

下载:https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-4.0.0.1744.zip
安装
unzip sonar-scanner-cli-3.3.0.1492-linux.zip -d /usr/local/
ln -s /usr/local/sonar-scanner-3.3.0.1492-linux/  /usr/local/sonar-scanner
加入环境变量
vim /etc/profile
SONARSCANNER_HOME=/usr/local/sonar-scanner-4.0.0.1744
export PATH=$SONARSCANNER_HOME/bin
使用sonar-scanner提交代码检测
# sonar-scanner  -Dsonar.projectKey=java    -Dsonar.sources=.   -Dsonar.host.url=http://192.168.241.140:9000  -Dsonar.login=13585323c4c8ac257c590d6e49c7b59dda5192f8

八、sonarqube集成jenkins

jenkins安装配置省略
安装SonarQube Scanner插件

在这里插入图片描述
在这里插入图片描述

重启jenkins
配置SonarQube
首先,在SonarQube中生成一个Token(PS:用token代替输入用户名和密码)

在这里插入图片描述

我这里刚开始启动时已经生成
Provide a token
jenkins: 869f399843992649d15d36863a76e0c1ab40ba49
mvn sonar:sonar \
  -Dsonar.host.url=http://10.122.163.225:9000 \
  -Dsonar.login=869f399843992649d15d36863a76e0c1ab40ba49
  sonar-scanner \
  -Dsonar.projectKey=html \
  -Dsonar.sources=. \
  -Dsonar.host.url=http://10.122.163.225:9000 \
  -Dsonar.login=869f399843992649d15d36863a76e0c1ab40ba49
然后,在Jenkins中配置连接sonarqube服务器的地址,这里用到的token就是刚才在sonarqube中创建的那个token

在这里插入图片描述
在这里插入图片描述

注意:token第一次添加不成功,先保存当前已修改,在重新进入添加
最后,配置全局工具配置

在这里插入图片描述

在这里插入图片描述

任务配置

在这里插入图片描述
在这里插入图片描述

其中,sonar.java.binaries属性至关重要

在这里插入图片描述

sonarqube接入阿里巴巴代码规范
下载plugin,注意兼容版本
wget https://github.com/mrprince/sonar-p3c-pmd/releases/download/v2.6/sonar-pmd-plugin-2.6.jar
更改权限
chown sonar.sonar  sonar-pmd-plugin-2.6.jar
也可以如下操作

在这里插入图片描述
在这里插入图片描述

重启sonarqube
 su - sonar /usr/local/sonarqube/bin/linux-x86-64/sonar.sh restart
重新登录查看规则并测试分析代码在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值