Како инсталирати СонарКубе на ЦентОС 7

СонарКубе је алат отвореног кода за развој система квалитета. Написан је на Јави и подржава више база података. Пружа могућности за континуирану проверу кода, приказивање здравља апликације и истицање новоуведених проблема. Садржи анализаторе кода који су опремљени за откривање лукавих проблема. Такође се лако интегрише са ДевОпс-ом.

У овом водичу ћемо инсталирати најновију верзију СонарКубе-а на ЦентОС 7.

Напомена: Овај документ је ажуриран од првобитне публикације. Погледајте одељак „Еррата“ у фуснотама.

Предуслови

Корак 1: Извршите ажурирање система

Пре инсталирања било ког пакета на инстанци сервера ЦентОС, препоручује се ажурирање система. Пријавите се користећи судо корисника и покрените следеће команде да бисте ажурирали систем.

sudo yum -y install epel-release
sudo yum -y update
sudo shutdown -r now

Када систем заврши са поновним покретањем, пријавите се поново као судо корисник и пређите на следећи корак.

Корак 2: Инсталирајте Јава

Преузмите Орацле СЕ ЈДК РПМ пакет тако што ћете откуцати:

wget --no-cookies --no-check-certificate --header "Cookie:oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm"

Инсталирајте преузети пакет тако што ћете откуцати:

sudo yum -y localinstall jdk-8u131-linux-x64.rpm

Сада можете да проверите верзију Јаве тако што ћете откуцати:

java -version

Корак 3: Инсталирајте и конфигуришите ПостгреСКЛ

Инсталирајте ПостгреСКЛ спремиште тако што ћете откуцати:

sudo rpm -Uvh https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm

Инсталирајте ПостгреСКЛ сервер базе података тако што ћете покренути:

sudo yum -y install postgresql96-server postgresql96-contrib

Иницијализујте базу података:

sudo /usr/pgsql-9.6/bin/postgresql96-setup initdb

Уредите да /var/lib/pgsql/9.6/data/pg_hba.confбисте омогућили аутентификацију засновану на МД5.

sudo nano /var/lib/pgsql/9.6/data/pg_hba.conf

Пронађите следеће редове и промените peerу trustи idnetу md5.

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
host    all             all             127.0.0.1/32            ident
# IPv6 local connections:
host    all             all             ::1/128                 ident

Једном ажурирана, конфигурација би требало да изгледа као приказана испод.

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

Покрените ПостгреСКЛ сервер и омогућите му да се аутоматски покреће при покретању тако што ћете покренути:

sudo systemctl start postgresql-9.6
sudo systemctl enable postgresql-9.6

Промените лозинку за подразумеваног корисника ПостгреСКЛ.

sudo passwd postgres

Пребаците се на postgresкорисника.

su - postgres

Креирајте новог корисника тако што ћете откуцати:

createuser sonar

Пређите на ПостгреСКЛ шкољку.

psql

Поставите лозинку за новокреираног корисника за базу података СонарКубе.

ALTER USER sonar WITH ENCRYPTED password 'StrongPassword';

Креирајте нову базу података за ПостгреСКЛ базу података тако што ћете покренути:

CREATE DATABASE sonar OWNER sonar;

Изађите из psqlљуске:

\q

Вратите се на судо корисника покретањем exitкоманде.

Корак 4: Преузмите и конфигуришите СонарКубе

Преузмите архиву датотека за инсталацију СонарКубе-а.

wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-6.4.zip

Увек можете потражити везу до најновије верзије апликације на страници за преузимање СонарКубе-а .

Инсталирајте распакујте тако што ћете покренути:

sudo yum -y install unzip

Распакујте архиву користећи следећу команду.

sudo unzip sonarqube-6.4.zip -d /opt

Преименујте директоријум:

sudo mv /opt/sonarqube-6.4 /opt/sonarqube

Отворите конфигурациону датотеку СонарКубе користећи свој омиљени уређивач текста.

sudo nano /opt/sonarqube/conf/sonar.properties

Пронађите следеће редове.

#sonar.jdbc.username=
#sonar.jdbc.password=

Одкоментирајте и наведите ПостгреСКЛ корисничко име и лозинку за базу података коју смо креирали раније. Требало би да изгледа овако:

sonar.jdbc.username=sonar
sonar.jdbc.password=StrongPassword

Затим пронађите:

#sonar.jdbc.url=jdbc:postgresql://localhost/sonar

Декоментирајте ред, сачувајте датотеку и изађите из уређивача.

Корак 5: Конфигуришите Системд услугу

СонарКубе се може покренути директно помоћу скрипте за покретање која се налази у пакету за инсталацију. Ради погодности, требало би да подесите Системд јединичну датотеку за СонарКубе.

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=root
Group=root
Restart=always

[Install]
WantedBy=multi-user.target

Покрените апликацију тако што ћете покренути:

sudo systemctl start sonar

Омогућите услугу СонарКубе да се аутоматски покрене при покретању.

sudo systemctl enable sonar

Да бисте проверили да ли је услуга покренута, покрените:

sudo systemctl status sonar

Корак 5: Конфигуришите обрнути прокси

Подразумевано, СонарКубе слуша лоцалхост на порту 9000. У овом водичу ћемо користити Апацхе као обрнути прокси тако да се апликацији може приступити преко стандардног ХТТП порта. Инсталирајте Апацхе веб сервер тако што ћете покренути:

sudo yum -y install httpd

Креирајте нови виртуелни хост.

sudo nano /etc/httpd/conf.d/sonar.yourdomain.com.conf

Попуните датотеку са:

<VirtualHost *:80>  
    ServerName sonar.yourdomain.com
    ServerAdmin me@yourdomain.com
    ProxyPreserveHost On
    ProxyPass / http://localhost:9000/
    ProxyPassReverse / http://localhost:9000/
    TransferLog /var/log/httpd/sonar.yourdomain.com_access.log
    ErrorLog /var/log/httpd/sonar.yourdomain.com_error.log
</VirtualHost>

Покрените Апацхе и омогућите му да се аутоматски покреће при покретању:

sudo systemctl start httpd
sudo systemctl enable httpd

Корак 6: Конфигуришите заштитни зид

Дозволите потребан ХТТП порт кроз заштитни зид система.

sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --reload

Покрените услугу СонарКубе:

sudo systemctl start sonar

Такође ћете морати да онемогућите СЕЛинук:

sudo setenforce 0

СонарКубе је инсталиран на вашем серверу, приступите контролној табли на следећој адреси.

http://sonar.yourdomain.com

Пријавите се користећи почетни администраторски налог adminи admin. Сада можете користити СонарКубе за континуирану анализу кода који сте написали.


Штампарска грешка

Ако инсталирате СонарКубе 7.1 (или новији), унесите промене у наставку јер се новије верзије Еластицсеарцх-а не могу покренути као роот корисник.

  • Ажурирајте дозволе: chown -R sonar:sonar /opt/sonarqube
  • Измени /opt/sonarqube/bin/linux-x86-64/sonar.sh, промени #RUNASу " sonar".
  • Измените /etc/systemd/system/sonar.service, промените корисничку групу да буде " sonar".

Остави коментар

Успон машина: Примене вештачке интелигенције у стварном свету

Успон машина: Примене вештачке интелигенције у стварном свету

Вештачка интелигенција није у будућности, она је овде управо у садашњости. У овом блогу Прочитајте како су апликације вештачке интелигенције утицале на различите секторе.

ДДОС напади: кратак преглед

ДДОС напади: кратак преглед

Да ли сте и ви жртва ДДОС напада и збуњени сте методама превенције? Прочитајте овај чланак да бисте решили своја питања.

Да ли сте се икада запитали како хакери зарађују новац?

Да ли сте се икада запитали како хакери зарађују новац?

Можда сте чули да хакери зарађују много новца, али да ли сте се икада запитали како зарађују толики новац? Хајде да причамо.

Гоогле-ови револуционарни изуми који ће вам олакшати живот.

Гоогле-ови револуционарни изуми који ће вам олакшати живот.

Да ли желите да видите револуционарне изуме Гугла и како су ти изуми променили живот сваког људског бића данас? Затим читајте на блогу да бисте видели Гооглеове изуме.

Фридаи Ессентиал: Шта се десило са аутомобилима које покреће вештачка интелигенција?

Фридаи Ессентиал: Шта се десило са аутомобилима које покреће вештачка интелигенција?

Концепт самовозећих аутомобила који путују на путеве уз помоћ вештачке интелигенције је сан који већ неко време имамо. Али упркос неколико обећања, њих нема нигде. Прочитајте овај блог да сазнате више…

Технолошка сингуларност: далека будућност људске цивилизације?

Технолошка сингуларност: далека будућност људске цивилизације?

Како се наука развија великом брзином, преузимајући многе наше напоре, расте и ризик да се подвргнемо необјашњивој сингуларности. Прочитајте шта би сингуларност могла да значи за нас.

Функционалности слојева референтне архитектуре великих података

Функционалности слојева референтне архитектуре великих података

Прочитајте блог да бисте на најједноставнији начин упознали различите слојеве у архитектури великих података и њихове функционалности.

Еволуција складиштења података – Инфографика

Еволуција складиштења података – Инфографика

Методе складиштења података су се развијале можда од рођења података. Овај блог покрива еволуцију складиштења података на основу инфографике.

6 невероватних предности поседовања паметних кућних уређаја у нашим животима

6 невероватних предности поседовања паметних кућних уређаја у нашим животима

У овом дигиталном свету, паметни кућни уређаји постали су кључни део живота. Ево неколико невероватних предности паметних кућних уређаја о томе како они чине наш живот вредним живљења и једноставнијим.

Ажурирање додатка за мацОС Цаталина 10.15.4 изазива више проблема него што их решава

Ажурирање додатка за мацОС Цаталина 10.15.4 изазива више проблема него што их решава

Недавно је Аппле издао мацОС Цаталина 10.15.4 додатак за исправку проблема, али изгледа да ажурирање изазива више проблема који доводе до квара Мац машина. Прочитајте овај чланак да бисте сазнали више