Создание подсети для Docker

Для того, чтобы контейнеры нормально видели друг друга и при этом не мешали доступу к реальным серверам, у которых случайно IP-адрес совпадает с маской сети Docker по умолчанию, лучше создать новую сеть для Docker:

docker create network -d bridge --subnet 172.28.0.0/16 sonar-net

Запуск контейнеров в созданной сети

#!/bin/bash

sudo docker run --rm --name sonar_postgres -e POSTGRES_PASSWORD=sonar \
    -e POSTGRES_USER=sonar -d -p 5432:5432 \
    -v ~/docker/volumes/sonar_postgres:/var/lib/postgresql/data \
    --net sonar-net postgres:10-alpine

sudo docker run --rm -d --name sonarqube_general -p 9000:9000 \
    -e SONARQUBE_JDBC_USERNAME=sonar -e SONARQUBE_JDBC_PASSWORD=sonar \
    -e SONARQUBE_JDBC_URL=jdbc:postgresql://sonar_postgres:5432/sonar \
    --net sonar-net sonarqube:lts

Установка нужных плагинов для Sonar

Сервер почему-то запускается “голый”, нужно вручную поставить необходимые плагины. Идем в Administration -> Marketplace и выбираем нужные плагины, все, что связано с Java:

  • Checkstyle
  • Code Smells
  • Findbugs
  • JaCoCo
  • PMD
  • SonarJava