第一章:部署sonarQube服务器
1.1 前置准备
安装sonar前要先配置好JAVA环境以及数据库环境。
本次安装使用jdk1.8
数据库使用mysql
sonarqube-5.6.6.zip 下载地址 https://www.sonarqube.org/downloads/
1.2 数据库配置
在mysql数据库下创建用户以及sonar数据库以及创建访问该数据库的用户:
本次创建用户为:sonar
#mysql -u root -p
mysql>CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
mysql>CREATE USER 'sonar' IDENTIFIED BY 'sonar';
mysql>GRANT ALL ON sonar.* TO 'sonar'@'%' IDENTIFIED BY 'sonar';
mysql>GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'sonar';
mysql>FLUSH PRIVILEGES;
可得到创建好的sonar用户密码也是sonar以及sonar数据库
1.3 解压sonarQube5.6.6安装包并修改配置文件
1.3.1 解压安装包
我的安装目录是 /opt/sonar/sonarqube-5.6.6 (自行决定)
unzip sonarqube-5.6.6.zip
1.3.2 修改配置文件
cd/opt/sonar/sonarqube-5.6.6/conf
编辑sonar.properties文件
Vi sonar.properties
# The schema must be created first.
sonar.jdbc.username=sonar #访问数据库用户名
sonar.jdbc.password=sonar #用户名密码
#----- MySQL 5.6or greater
# Only InnoDBstorage engine is supported (not myISAM).
# Only thebundled driver is supported. It can not be changed.
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
配置好访问数据库用户名密码以及访问地址URL。
1.4 配置数据源驱动以及拓展中文包
在安装目录 /opt/sonar/sonarqube-5.6.6/extensions/jdbc-driver
创建mysql文件夹(有则无需创建),在mysql文件夹下放置mysql的驱动包
mysql-connector-java-5.1.6-bin.jar
ps:如果是使用oracle,同理创建oracle文件夹,在oracle下放置oracle驱动包
在安装目录 /opt/sonar/sonarqube-5.6.6/extensions/plugins下
放置sonar-l10n-zh-plugin-1.9-SNAPSHOT.jar 下载地址 https://github.com/SonarQubeCommunity/sonar-l10n-zh
1.5 配置环境变量
vi /etc/profile
添加:
export SONARQUE_HOME=/opt/sonar/sonarqube-5.6.6
export PATH=$SONARQUE_HOME/bin:$PATH
保存系统配置 source /etc/profile
1.6 启动sonar
目录切换至sonar的/opt/sonar/sonarqube-5.6.6/bin/linux-x86-64目录,启动服务
#./sonar.sh start 启动服务
#./sonar.sh stop 停止服务
#./sonar.sh restart 重启服务
启动成功,访问页面
Soanr初始管理员账号密码: admin admin
第二章:安装jenkins以及与sonarQube集成
2.1 jenkins安装
jenkins有两种安装方式,一种是war包安装,一种是yum安装,本次安装使用简单的war包方式安装jenkins(适用于我这样的新手)。
jenkins可以在tomcat下跑,也可以脱离tomcat
配置服务器名称、访问URL地址,Sonar5.3版本以后使用token认证
获取token方法:
登录SonarQubeWeb->administrator->My Account
点击 Generate 生成token串
2.4 配置Sonar Scanner
sonar scanner 与 sonar runner 一样都是用于扫描项目的工具
2.4.1 sonar scanner安装
2.4.1.1 下载解压安装包
unzip sonar-scanner-cli-3.0.3.778-linux.zip
2.4.1.2 修改配置文件
vi /opt/sonar/sonar-scanner/sonar-scanner-3.0.3.778-linux/sonar-scanner.properties
#Configure here general information about the environment, such as SonarQube DB details for example
#No information about specific project should appear here
#----- Default SonarQube server
sonar.host.url=http://localhost:9000
#----- Default source code encoding
sonar.sourceEncoding=UTF-8
2.4.1.3 配置环境变量
vi /etc/profile
添加:
export SONARSCANNER_HOME=/opt/sonar/sonar-scanner/sonar-scanner-3.0.3.778-linux
export PATH=$SONARSCANNER_HOME/bin:$PATH
保存系统配置 source/etc/profile
PS:sonar-runner 的安装与配置跟sonar scanner如出一辙,可能sonar-scanner.properties配置文件有所不同而已
2.4.2 jenkins配置sonar scanner
系统管理–>Global Tool Configuration
2.5 jenkins项目配置
选择一个可以构建的项目
修改:add pre-build step节点
SonarQube Scanner配置可以直接在项目根目录中创建一个文件(sonar-project.properties),然后使用path to project properties中指定属性文件,或者直接在AnalysisProperties中书写
2.6 预期效果
点击项目->立即构建,构建成功后查看SonarQube web可以查看项目分析结果
第一次写博客,有的地方可能不是很清楚,大家一起学习,哈哈哈... ...