# ignore: true # documentation: https://hub.docker.com/_/sonarqube/ # slogan: SonarQube is a self-managed, automatic code review tool that systematically helps you deliver Clean Code # tags: sonarqube, code-review, clean-code, quality, code-quality, code-analysis, code-smells, code-coverage, code-security services: sonarqube: image: sonarqube:community environment: - SERVICE_FQDN_SONARQUBE_9000 - SONAR_JDBC_URL=jdbc:postgresql://postgresql:5432/${POSTGRES_DB:-sonar} - SONAR_JDBC_USERNAME=$SERVICE_USER_POSTGRES - SONAR_JDBC_PASSWORD=$SERVICE_PASSWORD_POSTGRES - SONAR_ES_BOOTSTRAP_CHECKS_DISABLE=true volumes: - sonarqube-data:/opt/sonarqube - sonarqube-conf:/opt/sonarqube/conf - sonarqube-extensions:/opt/sonarqube/extensions - sonarqube-logs:/opt/sonarqube/logs - sonarqube-bundled-plugins:/opt/sonarqube/lib/bundled-plugins healthcheck: test: ["CMD", "wget", "-q", "--spider", "http://127.0.0.1:9000"] interval: 5s timeout: 20s retries: 10 depends_on: postgresql: condition: service_healthy postgresql: image: postgres:16-alpine volumes: - postgresql-data:/var/lib/postgresql/data environment: - POSTGRES_USER=$SERVICE_USER_POSTGRES - POSTGRES_PASSWORD=$SERVICE_PASSWORD_POSTGRES - POSTGRES_DB=${POSTGRES_DB:-sonar} healthcheck: test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"] interval: 5s timeout: 20s retries: 10