1. 概述
SonarQube是一种自动代码审查工具,用于检测代码中的错误、漏洞和代码异常。它可以与您现有的工作流程集成,以实现跨项目分支和拉取请求的持续代码检查。
更多详情请参阅SonarQube官网
一个SonarQube 实例包含三个组件,如下图所示
SonarQube使用了Elasticsearch作为搜索引擎,在安装之前需要设置内核参数,如下:
sysctl -w vm.max_map_count=524288
sysctl -w fs.file-max=131072
ulimit -n 131072
ulimit -u 8192
SonarQube也需要JDK和数据库的支持,官网推荐的数据有Microsoft SQL Server、Oracle、PostgreSQL,本文将使用PostgreSQL作为数据存储,使用docker compose安装PostgreSQL和SonarQube,有需要了解如何安装docker和docker compose的小伙伴,请参阅Docker系列之CentOS8安装Docker和Docker系列之Compose
SonarQube对JDK版本需求如下:
SonarQube对PostgreSQL版本需求如下:
2. 编写docker-compose.yml文件
version: '3.7'
services:
postgres:
container_name: postgres
image: library/postgres:13.6
restart: unless-stopped
ports:
- '5432:5432'
environment:
POSTGRES_USER: sonar
POSTGRES_PASSWORD: 123456
POSTGRES_DB: sonarqube
volumes:
- ./postgres/postgresql:/var/lib/postgresql
- ./postgres/data:/var/lib/postgresql/data
networks:
- sonarnet
sonarqube:
container_name: sonarqube
image: sonarqube:lts-community
restart: unless-stopped
ports:
- '9000:9000'
environment:
SONAR_JDBC_URL: jdbc:postgresql://postgres:5432/sonarqube
SONAR_JDBC_USERNAME: sonar
SONAR_JDBC_PASSWORD: 123456
volumes:
- ./sonarqube/data:/opt/sonarqube/data
- ./sonarqube/logs:/opt/sonarqube/logs
- ./sonarqube/extensions:/opt/sonarqube/extensions
depends_on:
- postgres
networks:
- sonarnet
networks:
sonarnet:
driver: bridge
3. 安装镜像
执行如下命令执行postgres
docker-compose up postgres -d
docker-compose up sonarqube -d
安装成功后,在浏览器输入地址http://localhost:9000,输入用户名和密码admin/admin
第一次登陆时,会提示修改密码
4. 配置项目
登陆成功后进入首页
生成密钥,选择添加项目
选择Manually
输入项目key和名称,点击set up
输入用户token,点击Generate生成token
记住生成的token,以备后用
5. 验证
新建一个SpringBoot项目,在命令行输入命令
mvn sonar:sonar -Dsonar.projectKey=项目key -Dsonar.host.url=http://localhost:9000 -Dsonar.login=项目token
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/76767.html