跳到主要内容

Sonarqube 初步使用

阅读需 1 分钟

直接上docker-compose.yml

version: "2"
services:
sonarqube:
image: sonarqube:lts
container_name: sonarqube
depends_on:
- db
environment:
SONAR_ES_BOOTSTRAP_CHECKS_DISABLE: "true"
SONAR_JDBC_URL: jdbc:postgresql://db:5432/sonar
SONAR_JDBC_USERNAME: sonar
SONAR_JDBC_PASSWORD: sonar
volumes:
- ./data:/opt/sonarqube/data
- ./extensions:/opt/sonarqube/extensions
- ./logs:/opt/sonarqube/logs
ports:
- 9002:9000
db:
image: postgres:12
restart: always
environment:
POSTGRES_USER: sonar
POSTGRES_PASSWORD: sonar
volumes:
- ./postgresql_data:/var/lib/postgresql/data
  1. postgresql报错:

    一开始用的是postgresql:12,死活启动不起来,报错:/docker-entrypoint-initdb.d/ 权限错误,换成postgres:12-alpine后就好了。

    根本原因应该不是版本问题,是volumes初始化问题,因为再换回12又同样可以了。

  2. sonarqube报错:could not find java in ES_JAVA_HOME at /usr/lib/jvm/java-11-openjdk/bin/java

    这是因为新版的问题,一开始用的sonarqube:commutity的版本,换回sonarqube:lts就好了。

    或者配置seccomp-profile,详细的可以看这里这里

  3. gradle sonarqube报错:Unable to load component class org.sonar.scanner.report.MetadataPublisher

    这是因为jdk版本和sonarqube要求的版本不一致,会有提示:SonarScanner will require Java 11 to run, starting in SonarQube 9.x,换成高版本jdk即可。

  4. sonarqube中的ce.log报错:duplicate **key** value violates unique constraint "rules_parameters_unique"

    参考这里,我一开始用的版本是14,需要把postgres的版本降到12才行。

Loading Comments...