docker-comose搭建sonarqube 及 maven项目使用


前言

博主前面已经写过如何使用docker-comose搭建openldap,本文将介绍 sonarqube 的环境搭建

一、sonarqube 简介

SonarQube是管理代码质量一个开放平台,可以快速的定位代码中潜在的或者明显的错误(通用模板)
也可以自定义代码规范审核过滤器,我自己理解就是配置一大堆匹配表达式差不多的东东(见谅,基本都是用通用模板)

二、docker及docker-compose安装

博主已经分享过文章,关于docker和docker-compose安装,详见 Linux环境docker以及docker-compose安装

三、docker-compose安装sonarqube (postgres)

其实不用postgres也可以部署,单独部署一个sonarqube 也是可以使用的,完全看自己了

version: '3'
services:
  postgres:
    image: postgres:12
    container_name: postgres
    restart: always
    environment:
      - TZ=Asia/Shanghai
      - POSTGRES_USER=sonar
      - POSTGRES_PASSWORD=sonar
      - POSTGRES_DB=sonar
    volumes:
      - /var/docker-volumes/postgres/postgresql/:/var/lib/postgresql
      - /var/docker-volumes/postgres/data/:/var/lib/postgresql/data
    ports:
      - 5432:5432

  sonarqube:
    image: sonarqube:lts
    restart: always
    container_name: sonarqube
    environment:
      - SONARQUBE_JDBC_URL=jdbc:postgresql://postgres:5432/sonar
      - SONARQUBE_JDBC_USERNAME=sonar
      - SONARQUBE_JDBC_PASSWORD=sonar
      - JAVA_OPTS="-server -Xms512m -Xmx1024m -Xss512k"
    volumes:
      - /var/docker-volumes/sonarqube/conf:/opt/sonarqube/conf
      - /var/docker-volumes/sonarqube/logs:/opt/sonarqube/logs
      - /var/docker-volumes/sonarqube/data:/opt/sonarqube/data
      - /var/docker-volumes/sonarqube/extensions:/opt/sonarqube/extensions
    ports:
      - 9100:9000
    depends_on:
      - postgres

四 、宿主服务器配置更新

1、更新文件/etc/sysctl.conf

vim /etc/sysctl.conf 

添加以下内容

vm.max_map_count = 262144
fs.file-max = 65536

2、更新文件/etc/security/limits.conf

vim /etc/security/limits.conf 

添加以下内容

*    soft    nofile    65536
*    hard    nofile    65536

3、重启宿主服务器

reboot

五、启动docker容器

将第三步的内容copy并写入到文件docker-compose.yml后在当前文件所在目录执行docker-compose up -d 开始拉取镜像文件并创建容器
在这里插入图片描述

六、验证部署结果

浏览器直接打开 http://127.0.0.1:9100(记得登陆的是自己服务器的ip, 博主的9000已经给portainer管理软件用了, 就用的是9100)
admin/admin
在这里插入图片描述
登陆后强制修改登陆密码
在这里插入图片描述
安装汉化插件,看自己了
在这里插入图片描述
要点击同意风险,不然不让你安装
在这里插入图片描述
然后重启即可
在这里插入图片描述
重启后登陆,完成汉化
在这里插入图片描述

好了,到这里就基本就安装完成了,下面介绍maven搭配使用

七、maven项目配置

本文只介绍初级使用,官方的使用介绍地址:
Gradle - SonarScanner for Gradle
Maven - use the SonarScanner for Maven
Jenkins - SonarScanner for Jenkins

1、配置maven设置setting.xml

<settings>
    <pluginGroups>
        <pluginGroup>org.sonarsource.scanner.maven</pluginGroup>
    </pluginGroups>
    <profiles>
        <profile>
            <id>sonar</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <properties>
                <!-- Optional URL to server. Default value is http://localhost:9000 -->
                <sonar.host.url>
                  http://myserver:9000
                </sonar.host.url>
            </properties>
        </profile>
     </profiles>
</settings>

2、配置maven项目pom.xml

根据项目层级架构自己微调,不要加上去没用就认为放错地方了

     <build>
        <plugins>
            <!-- 指定jdk -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <skip>true</skip>
                    <source>${maven.compiler.source}</source>
                    <target>${maven.compiler.target}</target>
                    <encoding>${project.build.sourceEncoding}</encoding>
                </configuration>
            </plugin>
            <!--打包jar-->
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <!-- sonar scanner-->
            <plugin>
                <groupId>org.sonarsource.scanner.maven</groupId>
                <artifactId>sonar-maven-plugin</artifactId>
                <version>3.2</version>
            </plugin>
        </plugins>
    </build>

3、配置sonar扫描项目信息

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

配置完成后在项目中执行以下命令

mvn clean verify sonar:sonar -Dmaven.test.skip=true -Dsonar.login=3a21e287516bc58b7b7e4d17e6d32643c7a5d43b

执行完成后会显示项目扫描结果地址:
在这里插入图片描述
直接点击url查看
在这里插入图片描述

里面的各项本文就不详细介绍了 ~~~~~~~~~~~~~ OK,完美收工,谢谢支持!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值