Как установить SonarQube на Ubuntu 20.04 LTS
В этом руководстве мы покажем вам, как установить SonarQube на Ubuntu 20.04 LTS. Для тех из вас, кто не знал, SonarQube — это веб-инструмент с открытым исходным кодом для управления качеством кода и анализа кода. SonarQube включает такие функции, как обнаружение ошибок и уязвимостей и отслеживание кода. SonarQube может интегрироваться в GitHub, Azure DevOps, Bitbucket, GitLab и Docker. Если у вас есть локальный сервер Linux или облачная учетная запись, например AWS, Google Cloud или Azure, под рукой, вы можете бесплатно развернуть версию SonarQube для сообщества.
В этой статье предполагается, что у вас есть хотя бы базовые знания Linux, вы знаете, как использовать оболочку, и, что наиболее важно, вы размещаете свой сайт на собственном VPS. Установка довольно проста и предполагает, что вы работаете с учетной записью root, в противном случае вам может потребоваться добавить ‘ sudo
‘ к командам для получения привилегий root. Я покажу вам пошаговую установку SonarQube на Ubuntu 20.04 (Focal Fossa). Вы можете следовать тем же инструкциям для Ubuntu 18.04, 16.04 и любого другого дистрибутива на основе Debian, например Linux Mint.
Установите SonarQube на Ubuntu 20.04 LTS Focal Fossa
Шаг 1. Во-первых, убедитесь, что все ваши системные пакеты обновлены, выполнив следующие apt
команды в терминале.
sudo apt update sudo apt upgrade
Шаг 2. Настройте ядро.
Теперь измените системные ограничения ядра. Для этого мы должны установить следующее:
- vm.max_map_count должно быть больше или равно 524288
- fs.file-max должен быть больше или равен 131072
- Пользователь SonarQube должен иметь возможность открывать не менее 131072 файловых дескриптора.
- Пользователь SonarQube должен иметь возможность открывать не менее 8192 тем.
sudo nano /etc/sysctl.conf
Добавьте следующие строки в конец этого файла:
vm.max_map_count=262144 fs.file-max=65536 ulimit -n 65536 ulimit -u 4096
Затем откройте файл limits.conf с помощью команды:
sudo nano /etc/security/limits.conf
В конце этого файла добавьте следующее:
sonarqube - nofile 65536 sonarqube - nproc 4096
Затем перезагрузите систему, чтобы изменения вступили в силу:
reboot
Шаг 3. Установка Java.
Выполните следующую команду, чтобы установить OpenJDK и JRE 11:
sudo apt install openjdk-11-jdk sudo apt install openjdk-11-jre
Шаг 4. Установка PostgreSQL.
SonarQube работает только с PostgreSQL. Теперь мы запускаем команду ниже, чтобы установить его:
sudo apt install postgresql postgresql-contrib
После этого запустите и включите службу базы данных с помощью команд:
sudo systemctl enable postgresql sudo systemctl start postgresql
Теперь мы должны установить пароль для пользователя PostgreSQL с помощью команды:
sudo passwd postgres
Войдите в систему как суперпользователь PostgreSQL и создайте базу данных SonarQube и пользователя базы данных:
sudo -Hiu postgres createuser sonaradmin createdb -O sonaradmin sonarqubedb psql ALTER USER sonaradmin WITH ENCRYPTED password 'changeme'; \q exit
Шаг 5. Установка SonarQube в Ubuntu 20.04.
Теперь скачайте последнюю версию установщика SonarQube с официального сайта:
wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-8.9.1.44547.zip sudo unzip sonarqube-8.9.1.44547.zip -d /opt
Переместите извлеченные настройки в каталог:/opt/sonarqube
sudo mv /opt/sonarqube-8.9.1.44547 /opt/sonarqube
Шаг 6. Настройте SonarQube.
Теперь создаем группу как гидролокатор:
sudo groupadd sonar sudo useradd -c "user to run SonarQube" -d /opt/sonarqube -g sonar sonar sudo chown sonar:sonar /opt/sonarqube -R
Затем откройте файл конфигурации SonarQube с помощью вашего любимого текстового редактора:
nano /opt/sonarqube/conf/sonar.properties
Найдите следующие строки:
#sonar.jdbc.username= #sonar.jdbc.password=
Раскомментируйте и введите имя пользователя и пароль базы данных PostgreSQL, которые мы создали на вышеуказанных шагах, и добавьте строку подключения postgres:
sonar.jdbc.username=sonar sonar.jdbc.password=sonar sonar.jdbc.url=jdbc:postgresql://localhost:5432/sonarqube
Затем отредактируйте файл сценария сонара и установите RUN_AS_USER:
RUN_AS_USER=sonar
Теперь, чтобы запустить SonarQube:
sudo su sonar cd /opt/sonarqube/bin/linux-x86-64/
Затем запустите скрипт для запуска SonarQube:
./sonar.sh start
Чтобы проверить, запущен ли SonarQube, введите следующую команду:
./sonar.sh status
Шаг 7. Настройте службу Systemd.
Теперь давайте создадим systemd
файл, чтобы можно было управлять службой SonarQube. Создайте файл с помощью команды:
sudo nano /etc/systemd/system/sonar.service
Добавьте следующую строку:
[Unit] Description=SonarQube service After=syslog.target network.target [Service] Type=forking ExecStart=/opt/sonarqube/bin/linux-x86-64/sonar.sh start ExecStop=/opt/sonarqube/bin/linux-x86-64/sonar.sh stop User=sonar Group=sonar Restart=always LimitNOFILE=65536 LimitNPROC=4096 [Install] WantedBy=multi-user.target
Сохраните и закройте файл, теперь вы можете запустить и включить службу SonarQube с помощью следующих двух команд:
sudo systemctl start sonarqube sudo systemctl enable sonarqube
Шаг 8. Доступ к веб-интерфейсу SonarQube.
После успешной установки войдите в SonarQube, используя IP-адрес сервера типа браузера, за которым следует порт 9000:
http://your-server-ip-address:9000
В конечном итоге вы должны увидеть экран входа в систему, где вы будете использовать учетные данные по умолчанию admin / admin. После успешной аутентификации вам потребуется изменить пароль по умолчанию. Как только вы позаботитесь об этом, вы окажетесь на главной странице SonarQube:
Поздравляю! Вы успешно установили SonarQube. Благодарим за использование этого руководства по установке SonarQube в системе Ubuntu 20.04 LTS Focal Fossa. Для получения дополнительной помощи или полезной информации мы рекомендуем вам посетить официальный сайт SonarQube .