前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >企业DevOps之路:SonarQube代码质量平台

企业DevOps之路:SonarQube代码质量平台

作者头像
BUG弄潮儿
发布2022-04-15 15:37:20
9060
发布2022-04-15 15:37:20
举报
文章被收录于专栏:JAVA乐园

1. SonarQube 概述

SonarQube 是一个静态代码分析平台,用来持续分析和评测代码的质量,支持检测 Java、JavaScript、C#、C、C++ 等二十几种编程语言。通过 SonarQube 可以检测出项目中潜在的Bug、漏洞、代码规范、重复代码、缺乏单元测试的代码等问题,并提供了 UI 界面进行查看和管理。

SonarQube 由4部分构成:

  • SonarQube Server

SonarQube Server 会启动3个主要进程:Web Server:UI 管理界面 Search Server:基于 Elasticsearch 的搜索服务 Compute Engine Server:计算引擎服务,进行代码分析并保存到SonarQube Database

  • SonarQube Database

存储 SonarQube 实例的配置信息,项目、视图等的快照信息

  • SonarQube Scanners

分析项目代码,可在构建、持续集成服务器上运行一个或多个

  • SonarQube Plugins

SonarQube 插件管理

架构如下:

2. SonarQube 安装

在安装 SonarQube 之前,需要先安装 jdk(jdk版本11及以上版本)和 PostgreSQL(最新版已经不支持MySQL数据库了)

  • 下载
代码语言:javascript
复制
https://www.sonarqube.org/downloads/

因为 SonarQube 分为社区版和商业版。下载社区版

下载完是一个zip压缩包,直接解压接口。这里解压到以下目录

代码语言:javascript
复制
C:\jenkins\sonarqube-9.3.0
  • 创建数据库

创建 SonarQube 服务连接的数据库,库名为sonar

  • 配置

修改 SonarQube 的 数据库配置,对应的配置文件如下:

代码语言:javascript
复制
C:\jenkins\sonarqube-9.3.0\conf\sonar.properties

增加如下配置

代码语言:javascript
复制
sonar.jdbc.username=root
sonar.jdbc.password=root
sonar.jdbc.url=jdbc:postgresql://localhost/sonar?currentSchema=public

3. 启动 SonarQube

SonarQube 服务的启动脚本在如下目录

代码语言:javascript
复制
C:\jenkins\sonarqube-9.3.0\bin

根据不同平台选择不同启动脚本。目前安装在windows系统,所以对应的启动脚本

代码语言:javascript
复制
C:\jenkins\sonarqube-9.3.0\bin\windows-x86-64\StartSonar.bat

启动成功提示如下

对应的 sonar 数据库会自动增加很多 SonarQube 服务的表结构

4. 访问 SonarQube 服务

SonarQube 服务的默认端口是9000,访问如下地址

代码语言:javascript
复制
http://localhost:9000

默认登录账号/密码:admin / admin。登录后的第一步就是修改 admin 用户的密码,根据实际情况修改自己的密码即可。进入首页如下:

至此,SonarQube 服务已正常搭建。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-03-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 BUG弄潮儿 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. SonarQube 概述
  • 2. SonarQube 安装
  • 3. 启动 SonarQube
  • 4. 访问 SonarQube 服务
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档