CentOS7下sonarqube7.7+ sonar-scanner4.0+Jenkins(shell脚本)

文章目录

  • 环境准备
    • JAVA JDK
    • MySQL
  • 数据库配置
  • sonarqube
    • 部署配置
    • 启动初始化
  • sonar scanner
    • 部署配置
  • Jenkins+sonarqube

前言
说一下安装遇到的坑,本着版本越新越好的原则下载sonar7.9版本,但运行后提示jdk需要11+,因此在此提示虽说版本越新越好,但下载新版本的亲记得自己的JDK要11以上哦
CentOS7下sonarqube7.7+ sonar-scanner4.0+Jenkins(shell脚本)_第1张图片
另外再说一下7.8版本,查看release notes发现一句话,估计7.8以上版本没有默认MySQL的jdbc了。故而本文下载的7.7版本
CentOS7下sonarqube7.7+ sonar-scanner4.0+Jenkins(shell脚本)_第2张图片
再者说一下关于Jenkins的集成,2.176版本中,配置sonar server时怎么都无法加入token,前往Jenkins社区问题中搜索了一番,果然遇到了相同的问题。所以想要集成的小伙伴先等等了。本文中利用shell脚本,在Jenkins打包时调用sonar scanner进行代码检查
关于Jenkins构建部署参考另一篇文章
https://blog.csdn.net/baozi_xiaoge/article/details/99550364
在这里插入图片描述

环境准备

JAVA JDK

1、下载java jdk,https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
选择tar.gz下载
2、将下载的jdk上传至centos服务器,本文下载的版本201,上传到/usr/local/java目录下。并进行解压 tar zxvf jdk*.tar.gz命令
3、配置环境变量,编辑/etc/profile
在这里插入图片描述
使环境变量立马生效,source /etc/profile
4、输入命令java -version,出现如下内容则jdk配置完毕,若有报错查看环境变量是否配置正确
在这里插入图片描述

MySQL

MySQL安装参考如下链接

数据库配置

在centos环境下操作数据库
#mysql -uroot -p
输入密码进入mysql环境
创建数据库
mysql>CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
创建用户,密码建议大小写字母、数字、特殊字符组合,密码简单会报错
mysql>CREATE USER ‘sonar’ IDENTIFIED BY ‘密码’;
权限赋予
mysql> GRANT ALL ON sonar.* TO ‘sonar’@’%’ IDENTIFIED BY ‘密码’;
mysql> GRANT ALL ON sonar.* TO ‘sonar’@‘localhost’ IDENTIFIED BY ‘密码’;
刷新权限
mysql> FLUSH PRIVILEGES;

sonarqube

部署配置

https://www.sonarqube.org/downloads/
页面最下方点开选择7.7版本进行下载
CentOS7下sonarqube7.7+ sonar-scanner4.0+Jenkins(shell脚本)_第3张图片
将下载的sonarqube-7.7.zip上传至服务器指定目录
解压:unzip sonarqube-7.7.zip
CentOS7下sonarqube7.7+ sonar-scanner4.0+Jenkins(shell脚本)_第4张图片
解压完成后新增sonar用户
[root@localhost conf]# adduser sonar
将sonarqube目录用户权限修改
[root@localhost conf]# chown -R sonar sonarqube-7.7
进入sonarqube目录,相关文件配置
进入conf下,编辑sonar.properties文件,修改如下配置
CentOS7下sonarqube7.7+ sonar-scanner4.0+Jenkins(shell脚本)_第5张图片
CentOS7下sonarqube7.7+ sonar-scanner4.0+Jenkins(shell脚本)_第6张图片

启动初始化

非root用户启动
su - sonar -c “/bin/bash /opt/sonarqube-7.7/bin/linux-x86-64/sonar.sh start”
启动完成后浏览器访问
http://IP:9000/sonarqube
CentOS7下sonarqube7.7+ sonar-scanner4.0+Jenkins(shell脚本)_第7张图片
右上角点击登录,默认用户名密码 admin admin
点击【Administration】之后点击【Marketplace】,搜索框输入chinese,点击【install】
然后重新登录进入汉化界面
CentOS7下sonarqube7.7+ sonar-scanner4.0+Jenkins(shell脚本)_第8张图片

sonar scanner

部署配置

1、https://docs.sonarqube.org/latest/analysis/scan/sonarscanner/
选择指定版本进行下载
CentOS7下sonarqube7.7+ sonar-scanner4.0+Jenkins(shell脚本)_第9张图片
将下载后的sonar-scanner-cli-4.0.0.1744-linux.zip上传至服务器,unzip命令解压
名字过长,为了简化,mv重命名了一下
在这里插入图片描述
进入scanner目录下conf中,编辑配置文件
CentOS7下sonarqube7.7+ sonar-scanner4.0+Jenkins(shell脚本)_第10张图片
修改环境变量,编辑/etc/profile文件追加如下内容:
source /etc/profile立马生效
在这里插入图片描述
有了如下命令证明scanner配置生效
在这里插入图片描述

Jenkins+sonarqube

创建项目
sonarqube下点击右下角新增项目
CentOS7下sonarqube7.7+ sonar-scanner4.0+Jenkins(shell脚本)_第11张图片
创建令牌或者使用已有令牌,点击继续
令牌要注意保存

CentOS7下sonarqube7.7+ sonar-scanner4.0+Jenkins(shell脚本)_第12张图片
依次选择项目语言-构建技术,则生成如下命令
CentOS7下sonarqube7.7+ sonar-scanner4.0+Jenkins(shell脚本)_第13张图片
在项目目录下,新增一个.sh脚本。Jenkins下配置构建打包前调用该脚本。则构建部署前进行代码走查
在这里插入图片描述
在这里插入图片描述
CentOS7下sonarqube7.7+ sonar-scanner4.0+Jenkins(shell脚本)_第14张图片
执行构建。成功后进入sonarqube查看
在这里插入图片描述

你可能感兴趣的:(CentOS7下sonarqube7.7+ sonar-scanner4.0+Jenkins(shell脚本))