wait's〔三生石畔〕 善良人在追求中纵然迷惘,却终将意识到有一条正途。—— 歌德
SonarQube 代码质量管理平台的安装和使用
发表于: | 分类: 安全工具 | 评论:0 | 阅读: 3705

SonarQube为静态代码检查工具,采用B/S架构,帮助检查代码缺陷,改善代码质量,提高开发速度,通过插件形式,可以支持Java、C、C++、JavaScripe等等二十几种编程语言的代码质量管理与检测。

通过客户端插件分析源代码,sonar客户端可以采用IDE插件、Sonar-Scanner插件、Ant插件和Maven插件方式,并通过各种不同的分析机制对项目源代码进行分析和扫描,并把分析扫描后的结果上传到sonar的数据库,通过sonar web界面对分析结果进行管理

1、安装mysql5.6的yum源

# rpm -ivh https://repo.mysql.com/mysql-community-release-el7-7.noarch.rpm

2、yum安装mysql-server

# yum install mysql-server
# systemctl start mysqld

3、配置mysql优化参数

[mysqld]   
innodb_buffer_pool_size = 256M  
query_cache_type=1    
query_cache_size=32M

4、为sonar创建mysql数据库

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'@'localhost' IDENTIFIED BY 'sonar';
mysql> FLUSH PRIVILEGES;

二、安装SonarQube

1、去官网下载安装包

# wget https://sonarsource.bintray.com/Distribution/sonarqube/sonarqube-6.7.1.zip 

2、解压至安装路径

    # unzip sonarqube-6.7.1.zip -d /usr/local/webserver   
   PS: yum install -y unzip zip

3、建立运行用户并赋权限

# useradd sonar;chown -R sonar:sonar /usr/local/webserver/sonarqube-6.7.1/

4、建立软链接

# ln -s /usr/local/webserver/sonarqube-6.7.1 /usr/local/webserver/sonarqube
# ln -s /usr/local/webserver/sonarqube/bin/linux-x86-64/sonar.sh /usr/bin/sonar

5、更新配置

cat /usr/local/webserver/sonarqube/conf/sonar.properties
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
#----- MySQL 5.6+
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.web.host=0.0.0.0
sonar.web.context=/
sonar.web.port=9000

启用 sonar.web.javaOpts 并添加 -server参数

sonar.web.javaOpts=-Xmx512m -Xms512m -XX:+HeapDumpOnOutOfMemoryError -Djava.net.preferIPv4Stack=true

6、建立init快速启动文件

# vim /etc/init.d/sona
#!/bin/sh
#
# rc file for SonarQube
#
# chkconfig: 345 96 10
# description: SonarQube system (www.sonarsource.org)
#
### BEGIN INIT INFO
# Provides: sonar
# Required-Start: $network
# Required-Stop: $network
# Default-Start: 3 4 5
# Default-Stop: 0 1 2 6
# Short-Description: SonarQube system (www.sonarsource.org)
# Description: SonarQube system (www.sonarsource.org)
### END INIT INFO
su - sonar -c "/usr/bin/sonar $*"

# chmod +x /etc/init.d/sona

6、启动sonar

# /etc/init.d/sona start

三、安装SonarQube Scanner

1、去官网下载Scanner安装包

# wget https://sonarsource.bintray.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-3.0.3.778-linux.zip 

2、解压至安装路径

# unzip sonar-scanner-cli-3.0.3.778-linux.zip -d /usr/local/webserver/

3、建立软链接

# ln -s /usr/local/webserver/sonar-scanner-3.0.3.778-linux /usr/local/webserver/sonar-scanner
# ln -s /usr/local/webserver/sonar-scanner/bin/sonar-scanner /usr/bin/sonar-scanner

4、更新sonar-scanner配置

cat /usr/local/webserver/sonar-scanner/conf/sonar-scanner.properties
sonar.host.url=http://10.64.60.56:9000
sonar.sourceEncoding=UTF-8
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
sonar.jdbc.url=jdbc:mysql://10.64.60.56:3306/sonar?useUnicode=true&characterEncoding=utf8

5、下载项目代码到本地进行分析。

# git clone http://gitlab.hupu.com/lilei/kaluli-custom.git 

6、手动编写sonar-project.properties文件

# cd kaluli-custom/
# vim sonar-project.properties
sonar.projectKey=my:kaluli-custom
sonar.projectName=kaluli-custom
sonar.sources=.
sonar.sourceEncoding=UTF-8

7、sonar-scanner      //扫描代码生成报告

8、登陆sonar web即能看到kaluli-custom的分析报告

添加新评论

TOP