Как установить SonarQube на Ubuntu 20.04 LTS

Как установить 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 .

Оставить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *

4 × 4 =