SonarQube


SonarQube是一个开源、免费的代码质量管理平台,可以快速的定位代码中潜在的或者明显的错误 。

安装

推荐使用docker进行部署,这里使用docker-compose方式进行部署。

version: '2'
services:
  sonarqube:
    image: sonarqube:7.9.2-community
    container_name: sonarqube
    ports:
      - 19000:9000
    networks:
      - sonarnet
    volumes:
      - /data/sonarqube/logs:/opt/sonarqube/logs
      - /data/sonarqube/conf:/opt/sonarqube/conf
      - /data/sonarqube/data:/opt/sonarqube/data
      - /data/sonarqube/extensions:/opt/sonarqube/extensions
    environment:
      - "sonar.jdbc.url=jdbc:postgresql://db:5432/sonar"
      - "sonar.web.context=/sonarqube"
  db:
    image: postgres
    networks:
      - sonarnet
    environment:
      - POSTGRES_USER=sonar
      - POSTGRES_PASSWORD=sonar
    volumes:
      - /data/postgresql:/var/lib/postgresql
      - /data/postgresql/data:/var/lib/postgresql/data
networks:
  sonarnet:
    driver: bridge

jenkins集成

可以将sonar集成到Jenkins,实现代码自动构建时进行质量扫描。

sonar1

分析结果

sonar2