Создание платформы проверки качества кода сонаркуба на основе docker-compose

Java

1. Спрос

В процессе нашей разработки неизбежно, что иногда код написан неправильно или возникают проблемы со статическими ошибками.В это время необходим хороший инструмент проверки кода, иsonarqubeДостаточно, чтобы удовлетворить все требования.

2. Запись файла docker-compose

version: "3"

services:
  sonarqube:
    image: sonarqube:8.3.1-community
    container_name: sonarqube
    restart: 'no'
    networks:
      - sonarnet
    environment:
      - sonar.jdbc.username=sonar
      - sonar.jdbc.password=sonar
      - sonar.jdbc.url=jdbc:postgresql://sonarqube-postgre:5432/sonarqube
      - sonar.search.javaOpts=-Xms256m -Xmx256m
    ports:
      - "9010:9000"
      - "9011:9092"
    depends_on:
      - sonarqube-postgre
    links:
      - sonarqube-postgre
    volumes:
      - sonarqube_data:/opt/sonarqube/data
      - sonarqube_extensions:/opt/sonarqube/extensions
      - sonarqube_bundled-plugins:/opt/sonarqube/lib/bundled-plugins

  sonarqube-postgre:
    image: postgres:12.3
    container_name: sonarqube-postgre
    restart: 'no'
    networks:
        - sonarnet
    environment:
      - POSTGRES_USER=sonar
      - POSTGRES_PASSWORD=sonar
      - POSTGRES_DB=sonarqube
    volumes:
      - sonarqube_postgre_db:/var/lib/postgresql
      - sonarqube_postgre_data:/var/lib/postgresql/data

volumes:
  sonarqube_bundled-plugins:
  sonarqube_data:
  sonarqube_extensions:
  sonarqube_postgre_db:
  sonarqube_postgre_data:

networks:
  sonarnet:
    driver: bridge

3. Операция

docker-compose -f 文件路径 up

В-четвертых, вопросы, требующие внимания

  1. sonarqubeЗеркальное монтирование данных, желательно с использованием томов данныхvolume.
  2. в несколькихsonarqubeОдин и тот же объем данных не может использоваться в экземпляре.
  3. каждыйsonarqubeпример лучшиймой собственный单独из数据库schema.
  4. esсуществуетlinuxДля необходимой среды, на которую необходимо обратить внимание при работе в среде, вы можете увидеть справочную ссылку ниже, [зеркало sonarqube]
  5. Когда память хоста относительно мала, ее необходимо увеличить в файле образа.sonar.search.javaOpts=-Xms256m -Xmx256mпараметр, иначе может появитьсяSonarQube Process exited with exit value [es]: 137вопрос.

5. Справочные ссылки

гидроакустическое зеркало hub.docker.com/_/sonarqube
официальный сайт сонаркуба docs.sonar перейдите на be.org/latest/colormaps…