sonarqube 初探

本文详细介绍了如何通过docker-compose搭建SonarQube服务,并分别展示了在maven、ant、gradle项目中以及Jenkins中集成SonarQube的步骤,旨在帮助初学者快速上手代码质量管理。
摘要由CSDN通过智能技术生成

 

Table of Contents

快速搭建一个sonarqube服务

创建docker-compose.yml文件

启动容器服务

访问sonarqube web

访问数据库

项目中集成sonarqube

maven 项目集成sonarqube

ant 项目集成 soanrqube

gradle项目集成sonarqube

项目直接使用sonar-scan

Jenkins中集成sonarqube

安装配置插件

freestyle job中使用sonarqube

pipeline job中使用sonarqube


 

sonarqube 是一个开放的代码质量管理平台,本文通过容器快速部署一个sonarqube服务,以及在项目中如何集成sonarqube进行了总结,希望对sonarqube的初学者能有所帮助。

 

快速搭建一个sonarqube服务

使用sonarqube镜像能够快速的搭建一个sonarqube环境,供初学者学习和了解sonarqube的特性。本文使用docker-compose创建整个学习环境。

 

创建docker-compose.yml文件

搭建环境使用 sonarqube 6.7.6 , postgres 数据库以及 adminer来管理数据库

version: "3.1"

services:
  sonarqube:
    image: sonarqube:6.7.6-community
    ports:
      - "9000:9000"
    networks:
      - sonarnet
    environment:
      - sonar.jdbc.url=jdbc:postgresql://db:5432/sonar
    volumes:
      - sonarqube_conf:/opt/sonarqube/conf
      - sonarqube_data:/opt/sonarqube/data
      - sonarqube_extensions:/opt/sonarqube/extensions

  db:
    image: postgres
	ports:
	  - "5432:5432"
    networks:
      - sonarnet
    environment:
      - POSTGRES_USER=sonar
      - POSTGRES_PASSWORD=sonar
    volumes:
      - postgresql:/var/lib/postgresql
      - postgresql_data:/var/lib/postgresql/data
	  
   adminer:
       image: adminer
       restart: always
       ports:
          - 8088:8080

networks:
  sonarnet:
    driver: bridge

volumes:
  sonarqube_conf:
  sonarqube_data:
  sonarqube_extensions:
  postgresql:
  postgresql_data:

启动容器服务

letv@pcntj-10-122-152-26:/data/devops/sonarqube$ docker-compose up -d
Creating network "sonarqube_sonarnet" with driver "bridge"
Creating network "sonarqube_default" with the default driver
Creating sonarqube_db_1_bc19ad17fa01        ... done
Creating sonarqube_sonarqube_1_58b42b5eb2c4 ... done
Creating sonarqube_adminer_1_9c85e1252b37   ... done

letv@pcntj-10-122-152-26:/data/devops/sonarqube$ docker-compose ps
               Name                             Command               State           Ports         
----------------------------------------------------------------------------------------------------
sonarqube_adminer_1_87adf9587bb0     entrypoint.sh docker-php-e ...   Up      0.0.0.0:8088->8080/tcp
sonarqube_db_1_5622e6afa735          docker-entrypoint.sh postgres    Up      0.0.0.0:5432->5432/tcp
sonarqube_sonarqube_1_7dc22b38da57   ./bin/run.sh                     Up      0.0.0.0:9000->9000/tcp

访问sonarqube web

通过服务器所在ip以及端口9000访问sonarqube web页面,例如

http://10.122.152.26:9000  
admin with password admin

登录后可以根据提示创建一个token,后面项目集成时会用到。下面是已经上传

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值