Docker系列之搭建SonarQube代码审查平台

导读:本篇文章讲解 Docker系列之搭建SonarQube代码审查平台,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

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安装DockerDocker系列之Compose
SonarQube对JDK版本需求如下:
JDK版本
SonarQube对PostgreSQL版本需求如下:
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

安装postgres
执行如下命令安装sonarqube

docker-compose up sonarqube -d

安装sonarqube
安装成功后,在浏览器输入地址http://localhost:9000,输入用户名和密码admin/admin
登陆页
第一次登陆时,会提示修改密码
修改密码

4. 配置项目

登陆成功后进入首页
首页
生成密钥,选择添加项目
添加项目
选择Manually
manually
输入项目key和名称,点击set up
填写项目信息
输入用户token,点击Generate生成token
生成token
记住生成的token,以备后用
生成token

5. 验证

新建一个SpringBoot项目,在命令行输入命令

mvn sonar:sonar -Dsonar.projectKey=项目key -Dsonar.host.url=http://localhost:9000 -Dsonar.login=项目token

在sonarqube控制台,选择Projects选择,查看项目代码审查详情
查看项目审查情况

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/76767.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!