您的位置:

Sonarqube安装指南

一、Sonarqube 安装教程

Sonarqube是一个开源的代码质量检测工具,能够对Java、C#、C/C++、JavaScript等多种编程语言进行静态代码分析,检验代码的质量,以及对代码质量进行监控和管理。实现Sonarqube的主要步骤如下所示:

步骤1:安装Java环境

$ apt-get install openjdk-11-jdk

这里安装的是openjdk-11-jdk,请根据实际情况选择合适的版本

步骤2:下载Sonarqube

1、请先从官网下载Sonarqube安装包,下载地址为:https://www.sonarqube.org/downloads/。

2、然后将下载的zip包解压:

$ unzip sonarqube-8.9.2.46101.zip

步骤3:安装Sonarqube

1、将解压后的文件夹移动到 /opt 目录下:

$ sudo mv sonarqube-8.9.2.46101 /opt/sonarqube 

2、修改下面的文件,配置Sonarqube数据库和一些相关参数:

$ vim /opt/sonarqube/conf/sonar.properties

3、将下列代码中的信息进行修改,如数据库连接信息、服务器IP地址等信息:

sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
sonar.web.host=0.0.0.0
sonar.junit.reportPaths=./build/test-results/test

4、启动 Sonarqube 程序:

$ /opt/sonarqube/bin/linux-x86-64/sonar.sh start

如果不加 start 参数,Sonarqube 只会输出状态信息,并不会启动。

二、Sonarqube 软件使用教程

Sonarqube有两种分析方式:命令行分析和Maven构建分析。

一、命令行分析

使用命令行分析代码时,你需要执行以下步骤:

1、使用 Sonarqube Scanner 生成报告

$ sonar-scanner

2、上传 Sonarqube 生成的报告

$ curl -X POST -u admin:admin http://localhost:9000/api/ce/submit?projectKey=myproject:version

二、Maven构建分析

使用Maven构建分析时,你需要执行以下步骤:

1、在 pom.xml 文件中添加 Sonarqube 插件

<build>
    <plugins>
        <plugin>
            <groupId>org.sonarsource.scanner.maven</groupId>
            <artifactId>sonar-maven-plugin</artifactId>
            <version>3.8.0.2131</version>
        </plugin>
    </plugins>
</build>

2、运行 Maven 构建命令来构建代码,并生成 Sonarqube 报告

$ mvn sonar:sonar

三、Sonarqube 安装部署

一、搭建反向代理服务器

为了保证SonarQube服务的正常运行,需要一个反向代理服务器。实现步骤如下:

1、安装 Nginx 服务器:

$ apt-get install nginx

2、配置 Nginx 服务器,添加下面的代码,其中 server_name 替换为你的域名或ip地址:

server {
    listen 80;
    server_name example.com; # 替换为你的域名或ip地址
    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log;

    location / {
        proxy_pass http://localhost:9000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

3、重启 Nginx 服务器:

$ systemctl restart nginx 

二、部署Sonarqube服务到Tomcat

Sonarqube还可以通过Tomcat部署。

1、在Sonarqube解压目录/opt/sonarqube/bin下执行下列命令,将sonar.war文件复制到Tomcat服务下的webapps目录下:

$ cp /opt/sonarqube/bin/sonar.war /opt/tomcat/webapps/

2、建立一个连接MySQL数据库,并将连接信息写到sonar.properties中。

3、启动Tomcat服务。

$ /opt/tomcat/bin/startup.sh 

四、Sonarqube 安全问题

一、设置管理员账户

Sonarqube默认管理员账户admin/admin,为了安全起见,建议修改默认管理员账户,或设置其他管理员账户。实现步骤如下:

1、在Sonarqube界面中的 Administration -> Security -> User 中创建新的管理员账户,并删除默认管理员账户。

二、禁用默认策略

Sonarqube的默认策略可能过于严格或适用于少数情况,禁用默认策略可降低实验室中出现误报的机会,从而减少对您的项目管理的干扰。

1、在Sonarqube界面中的 Administration->General->Security 中取消勾选“Default Permission Template”,并默认添加您自己的权限模板。

五、Sonarqube 安装教程免费

Sonarqube自身是一个开源项目,可以免费使用。