Sonar系列:SonarQube+SonarScanner 最全安装步骤(一)

摘要:
Sonar是一个用于管理源代码质量的开源平台。Sonar不仅是一个质量数据报告工具,也是一个代码质量管理平台。

Sonar(SonarQube)是一个开源平台,用于管理源代码的质量。Sonar 不只是一个质量数据报告工具,更是代码质量管理平台。支持的语言包括:Java、PHP、C#、C、Cobol、PL/SQL、Flex 等。

一、环境准备

1、JDK安装配置 

下载jdk:https://www.oracle.com/java/technologies/javase-jdk11-downloads.html

上传到linux,解压,配置环境变量,重载生效:

复制代码
[root@localhost ~]# tar -zxvf jdk-11.0.12_linux-x64_bin.tar.gz [root@localhost ~]# vi /etc/profile
#java
export JAVA_HOME=/opt/jdk-11.0.12
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib

[root@localhost ~]# source /etc/profile
复制代码

验证测试:

Sonar系列:SonarQube+SonarScanner 最全安装步骤(一)第3张

 2、系统配置

sysctl -w vm.max_map_count=262144
sysctl -w fs.file-max=65536
ulimit -n 65536
ulimit -u 4096
二、安装部署

1、安装PostgreSQL 10

(1) 安装Pg数据库

wget https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
yum install pgdg-redhat-repo-latest.noarch.rpm
yum install -y postgresql10-server postgresql10

(2)初始化数据库并启动

/usr/pgsql-10/bin/postgresql-10-setup initdb
systemctl start postgresql-10

(3)创建pg用户

#切换账号
su — postgres
#进入pg库,直接 psql
psql

Sonar系列:SonarQube+SonarScanner 最全安装步骤(一)第4张

 创建sonar用户

create user sonar with password '123456';

创建sonarqube数据库

create database sonarqube owner sonar;

Sonar系列:SonarQube+SonarScanner 最全安装步骤(一)第5张

 (4)开启远程外联

修改配置文件,

位置:/var/lib/pgsql/10/data/postgresql.conf

修改:取消# 注释或者按照我这样新增 listen_addresses = ‘*’

Sonar系列:SonarQube+SonarScanner 最全安装步骤(一)第6张

位置:/var/lib/pgsql/10/data/pg_hba.conf

修改:新增 host all all 0.0.0.0/0 trust 访问规则

 Sonar系列:SonarQube+SonarScanner 最全安装步骤(一)第7张

 (5)重启服务,测试

systemctl restart postgresql-10

Sonar系列:SonarQube+SonarScanner 最全安装步骤(一)第8张

2、SonarQube安装部署

(1)下载软件包

下载地址:https://www.sonarqube.org/downloads/

1
wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-8.9.2.46101.zip

(2)添加系统用户

useradd sonar
passwd sonar

(3)解压安装包

mv sonarqube-7.9.1.zip /opt/sonarqube/
chown -R sonar:sonar /opt/sonarqube/
su - sonar
unzip sonarqube-8.9.2.46101.zip

(4)更改配置文件

[sonar@localhost conf]$ grep -Ev "^$|^[#;]" sonar.properties 
sonar.jdbc.username=sonar
sonar.jdbc.password=123456
sonar.jdbc.url=jdbc:postgresql://192.168.247.133/sonarqube

(5)启动SonarQube

./sonar.sh start

(6)验证检查是否搭建成功

检查步骤一:连接PostgreSQL,查看sonar的数据库下面是否自动创建了相关的表。

Sonar系列:SonarQube+SonarScanner 最全安装步骤(一)第9张

 步骤二:检查sonarqube的服务端的地址是否可以正常访问。

Sonar系列:SonarQube+SonarScanner 最全安装步骤(一)第10张

 三、登录配置

(1)默认账户admin/admin,首次登录,强制修改密码。

Sonar系列:SonarQube+SonarScanner 最全安装步骤(一)第11张

 (2)安装汉化插件

选择 Administration -> Marketplace -> Plugins 中搜索 Chinese pack ,然后Install.

Sonar系列:SonarQube+SonarScanner 最全安装步骤(一)第12张

 Restart Server生效。

Sonar系列:SonarQube+SonarScanner 最全安装步骤(一)第13张

Sonar系列:SonarQube+SonarScanner 最全安装步骤(一)第14张

 四、SonarScanner扫描

(1) 安装配置

下载地址:https://docs.sonarqube.org/latest/analysis/scan/sonarscanner/

复制代码
[root@localhost ~]# unzip sonar-scanner-cli-4.6.2.2472-linux.zip -d /opt/SonarScanner
[root@localhost ~]# vi /etc/profile

  #SonarScanner

  export Sonar_Home=/opt/SonarScanner/
  export PATH=$Sonar_Home/bin:$PATH

[root@localhost ~]# source /etc/profile
复制代码

扫描方式一:SonarScanner配置

修改配置信息/opt/SonarScanner/conf/sonar-scanner.properties:

Sonar系列:SonarQube+SonarScanner 最全安装步骤(一)第17张

扫描方式二:创建项目

在sonar控制台,新建项目,创建令牌,选择扫描方式。

Sonar系列:SonarQube+SonarScanner 最全安装步骤(一)第18张

扫描方式三:扫描项目

编写脚本执行

复制代码

 [root@localhost simple-java-maven-app]# ./sonar.sh 

sonar-scanner -Dsonar.host.url=http://192.168.247.133:9000
-Dsonar.projectKey=demo-maven-service
-Dsonar.projectName=demo-maven-service
-Dsonar.projectVersion=1.0
-Dsonar.login=admin
-Dsonar.password=abc123!
-Dsonar.ws.timeout=30
-Dsonar.projectDescription="my first project!"
-Dsonar.links.homepage=http://www.baidu.com
-Dsonar.sources=src
-Dsonar.sourceEncoding=UTF-8
-Dsonar.java.binaries=target/classes
-Dsonar.java.test.binaries=target/test-classes
-Dsonar.java.surefire.report=target/surefire-reports

复制代码

Sonar系列:SonarQube+SonarScanner 最全安装步骤(一)第21张

参考连接:

Centos7 安装Postgresql 10 详细步骤(远程连接)

https://www.icode9.com/content-2-816200.html 

https://www.cnblogs.com/mascot1/category/1291403.html 

免责声明:文章转载自《Sonar系列:SonarQube+SonarScanner 最全安装步骤(一)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇js 无刷新监听URL的变化pandas groupby合并列字符串下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

《手把手教你》系列技巧篇(四十四)java+ selenium自动化测试处理https 安全问题或者非信任站点下篇(详解教程) 北京

1.简介     这一篇宏哥主要介绍webdriver在IE、Chrome和Firefox三个浏览器上处理不信任证书的情况,我们知道,有些网站打开是弹窗,SSL证书不可信任,但是你可以点击高级选项,继续打开不安全的链接。举例来说,想必大家都应该用过前几年的12306网站购票,点击新版购票,是不是会出现如下的界面。宏哥又找了一个https的页面,如下图所示:...

linux环境下排查cpu占比高的MySQL数据库sql语句

自MySQL 5.7版本后,PERFORMANCE_SCHEMA.THREADS表中新增一个字段THREAD_OS_ID,对应操作系统中的线程ID 1.安装sysstat工具包(为了使用pidstat命令),更多信息参考: https://www.linuxidc.com/Linux/2019-08/160082.htm Ubuntu: apt-get i...

Android 上预览 PDF 文件

最近在 手机上要显示 PDF 文件,在搜索引擎上找到了很多方案,大体上有以下几种: 使用提供的在线服务,例如 Google 文档预览服务,mWebView.loadUrl("http://docs.google.com/gview?embedded=true&url="+ pdfUrl); 使用 AndroidPdfViewer,这是一个 Git...

Flexible实现H5页面的rem布局适配

1、https://www.w3cplus.com/mobile/lib-flexible-for-html5-layout.html (使用Flexible实现手淘H5页面的终端适配) 2、http://blog.csdn.net/u010377383/article/details/77963973 (Flexible实现手淘H5页面的rem布局适配)...

GitHub上优秀的Go开源项目

2014年11月,Golang官方博客发布Go语言核心开发组成员Andrew Gerrand文章 《Half a decade with Go》,以纪念Go语言发布5周年。Andrew Gerrand在文章中称,Go语言在工业界向云计算转型时代找到了自己的位置,目前一些重量级的云计算项目比如有名的Docker等都是用Go语言开发的,并预言“2015年将是G...

如何为网站启用HTTPS加密传输协议

前言 当今时代对上网的安全性要求比以前更高,chrome和firefox也都大力支持网站使用HTTPS,苹果也从2017年开始在iOS 10系统中强制app使用HTTPS来传输数据,微信小程序也是要求必须使用HTTPS请求,由此可见HTTPS势在必行。 部落在这里主要给大家介绍一下什么是HTTPS,以及如何使用Let’s Encrypt免费证书为网站启用H...