Si të instaloni SonarQube në Ubuntu 16.04
SonarQube është një platformë e sistemit të menaxhimit të cilësisë pa pagesë dhe me burim të hapur që mund të përdoret për të automatizuar inspektimin e kodit. Mund të analizojë skedarët e kodit burimor, të llogarisë një grup metrikash dhe të tregojë rezultatin në panelin e kontrollit të bazuar në ueb. Është shkruar në gjuhën Java dhe gjithashtu mbështet gjuhë të tjera si Perl, PHP dhe Ruby. Si parazgjedhje, SonarQube mbështet bazën e të dhënave h2, por nuk është e shkallëzueshme. Kështu që ju mund të integroni SonarQube me serverë të tjerë të bazës së të dhënave si MSSQL, PostgreSQL, Oracle dhe MySQL. SONarQube vjen me shumë shtojca, të cilat do të integrojnë kodin burim automatikisht nga depot. Ai i lejon zhvilluesit të zbulojnë gabime dhe dobësi, si dhe të ulin erën e kodit, në më shumë se 20 gjuhë të ndryshme. Mund të integroni lehtësisht SolarQube me mjediset e zhvillimit Eclipse, Visual Studio dhe IntelliJ IDEA përmes shtojcave SonarLint.
Në këtë tutorial, ne do të mësojmë se si të instalojmë SonarQube në një server Ubuntu 16.04.
Parakushtet
- Një server i ri Ubuntu 16.04 i instaluar në sistemin tuaj.
- Minimumi 4 GB RAM.
- Një përdorues jo-root me privilegje sudo.
Fillimi
Përpara fillimit, rekomandohet të përditësoni sistemin tuaj bazë me versionin më të fundit. Ju mund ta bëni këtë duke ekzekutuar komandën e mëposhtme:
sudo apt-get update -y
sudo apt-get upgrade -y
Pas përditësimit të sistemit tuaj, mund të vazhdoni të instaloni Java.
1 Instaloni Java
Sonarqube është një aplikacion i bazuar në Java, kështu që fillimisht do t'ju duhet të instaloni Java 8. Si parazgjedhje Java 8 nuk është e disponueshme në depon e Ubuntu. Mund të instaloni Java 8 duke shtuar në sistemin tuaj depon e webupd8team PPA.
Së pari, shtoni PPA duke ekzekutuar komandën e mëposhtme:
sudo add-apt-repository ppa:webupd8team/java
Më pas, përditësoni depon me komandën e mëposhtme:
sudo apt-get update -y
Pasi depoja të jetë e përditësuar, mund të instaloni Java 8 duke ekzekutuar komandën e mëposhtme:
sudo apt-get install oracle-java8-installer -y
Pas instalimit të Java, mund të kontrolloni versionin e Java me komandën e mëposhtme:
java -version
Ju duhet të shihni daljen e mëposhtme:
Java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)
Pasi të keni mbaruar, mund të vazhdoni në hapin tjetër.
2 Instaloni Apache dhe MariaDB
Ju gjithashtu do të duhet të instaloni Apache dhe MariaDB, sepse ne do të përdorim Apache për proxy të kundërt dhe MariaDB si bazë të dhënash. Ju mund t'i instaloni të dyja duke ekzekutuar komandën e mëposhtme:
sudo apt-get install apache2 mariadb-server -y
Pasi të përfundojë instalimi, filloni shërbimin Apache dhe MariaDB dhe mundësojini ata të fillojnë në boot me komandën e mëposhtme:
sudo systemctl start apache2
sudo systemctl enable apache2
sudo systemctl start mysql
sudo systemctl enable mysql
Pasi të instalohen dhe punojnë Apache dhe MariaDB, mund të vazhdoni në hapin tjetër.
3 Konfiguro MariaDB
Si parazgjedhje, instalimi i MariaDB nuk është i siguruar, kështu që do t'ju duhet të siguroni instalimin e MariaDB. Ju mund ta bëni këtë duke ekzekutuar skriptin mysql_secure_installation:
sudo mysql_secure_installation
Në këtë proces, do t'ju kërkohet të vendosni fjalëkalimin root, të hiqni përdoruesit anonimë, të mos lejoni hyrjen në rrënjë nga distanca dhe të hiqni bazën e të dhënave të testimit. Përgjigjuni të gjitha pyetjeve siç tregohet më poshtë:
Enter current password for root (enter for none):
Change the root password? [Y/n] n
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
Pasi të sigurohet MariaDB, hyni në guaskën MariaDB me komandën e mëposhtme:
mysql -u root -p
Futni fjalëkalimin tuaj rrënjësor kur ju kërkohet, më pas krijoni një bazë të dhënash për SonarQube:
MariaDB [(none)]> CREATE DATABASE sonardb;
Më pas, krijoni një përdorues të ri të bazës së të dhënave dhe siguroni privilegjet e duhura për përdoruesin tuaj të bazës së të dhënave mbi bazën e të dhënave që keni krijuar.
MariaDB [(none)]> GRANT ALL PRIVILEGES ON sonardb.* TO 'sonar'@'localhost' IDENTIFIED BY 'yourpassword';
Më pas, aplikoni ndryshimet në privilegjet e bazës së të dhënave me komandën e mëposhtme:
MariaDB [(none)]> FLUSH PRIVILEGES;
Më në fund, dilni nga guaska MariaDB me komandën e mëposhtme:
MariaDB [(none)]> \q
Pasi të jetë konfiguruar baza e të dhënave, mund të vazhdoni në hapin tjetër.
4 Instaloni SonarQube
Ju mund të shkarkoni versionin më të fundit të SonarQube nga faqja e tyre zyrtare. Mund ta shkarkoni me komandën wget:
wget https://sonarsource.bintray.com/Distribution/sonarqube/sonarqube-6.4.zip
Pasi të përfundojë shkarkimi, hiqni arkivin e shkarkuar duke përdorur komandën e mëposhtme:
sudo unzip sonarqube-6.4.zip -d /opt
Më pas, riemërtoni drejtorinë me komandën e mëposhtme:
sudo mv /opt/sonarqube-6.4 /opt/sonar
Më pas, do t'ju duhet të modifikoni skedarin kryesor të konfigurimit të SonarQube sonar.properties:
sudo nano /opt/sonar/conf/sonar.properties
Bëni ndryshimet e mëposhtme:
##Database User credentials:
sonar.jdbc.username=sonar
sonar.jdbc.password=yourpassword
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
Ruani dhe mbyllni skedarin, më pas krijoni një skedar shërbimi të sistemit për SonarQube.
sudo nano /etc/systemd/system/sonar.service
Shtoni rreshtat e mëposhtëm:
[Unit]
Description=SonarQube service
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/opt/sonar/bin/linux-x86-64/sonar.sh start
ExecStop=/opt/sonar/bin/linux-x86-64/sonar.sh stop
User=root
Group=root
Restart=always
[Install]
WantedBy=multi-user.target
Ruani skedarin kur të keni mbaruar, më pas nisni shërbimin SonarQube dhe aktivizoni që të fillojë në nisje me komandën e mëposhtme:
sudo systemctl start sonar
sudo systemctl enable sonar
Procesi i SonarQube kërkon pak kohë për të përfunduar për krijimin e bazës së të dhënave dhe plotësimin e të dhënave. Ju mund të kontrolloni statusin e SonarQube me komandën e mëposhtme:
sudo systemctl status sonar
Ju gjithashtu mund të monitoroni procesin duke parë përmbajtjen e skedarit /opt/sonar/logs/sonar.log. Pasi të keni mbaruar, mund të vazhdoni në hapin tjetër.
5 Konfiguro Apache si një përfaqësues të kundërt
Si parazgjedhje, SonarQube dëgjon në portin 9000. Këtu, ne do të përdorim apache si një përfaqësues të kundërt, në mënyrë që SonarQube të mund të aksesohet duke përdorur portin 80:
Së pari, aktivizoni modulin e proxy apache me komandën e mëposhtme:
sudo a2enmod proxy
sudo a2enmod proxy_http
Tjetra, krijoni një skedar të ri pritës virtual për SonarQube me komandën e mëposhtme:
sudo nano /etc/apache2/sites-available/sonar.conf
Shtoni rreshtat e mëposhtëm:
<VirtualHost *:80>
ServerName 192.168.15.189
ServerAdmin
ProxyPreserveHost On
ProxyPass / http://localhost:9000/
ProxyPassReverse / http://localhost:9000/
TransferLog /var/log/apache2/sonar_access.log
ErrorLog /var/log/apache2/sonar_error.log
</VirtualHost>
Ruani dhe mbyllni skedarin, më pas aktivizoni hostin e ri virtual duke ekzekutuar komandën e mëposhtme:
sudo a2ensite sonar
Më në fund, rinisni shërbimin apache me komandën e mëposhtme:
sudo systemctl restart apache2
6 Hyni në ndërfaqen e uebit të SonarQube
Të gjithë komponentët e kërkuar janë instaluar dhe konfiguruar. Tani është koha për të hyrë në ndërfaqen e internetit SonarQube.
Para se të hyni në të, do t'ju duhet të lejoni portin 80 përmes murit të zjarrit UFW. Si parazgjedhje, UFW është i çaktivizuar në Ubuntu, kështu që së pari duhet ta aktivizoni. Mund ta aktivizoni duke ekzekutuar komandën e mëposhtme:
sudo ufw enable
Pasi të aktivizohet muri i zjarrit UFW, mund të lejoni portin 80 përmes UFW duke ekzekutuar komandën e mëposhtme:
sudo ufw allow 80/tcp
Tani mund të kontrolloni statusin e murit të zjarrit UFW duke ekzekutuar komandën e mëposhtme:
sudo ufw status
Tani, hapni shfletuesin tuaj të internetit dhe lundroni në URL http://192.168.15.189, duhet të shihni ekranin e mëposhtëm:
Tani, klikoni në butonin \Identifikohu\, do të shihni ekranin e mëposhtëm:
Hyni me emrin e parazgjedhur të përdoruesit si \admin\ dhe fjalëkalimin si \admin\, ju duhet të shihni ekranin e mëposhtëm:
Pasi të keni hyrë në pultin e SonarQube, klikoni në butonin Administrata > Sistemi > Informacioni i Sistemit. Ju duhet të shihni informacionin aktual të sistemit në ekranin e mëposhtëm:
Më pas, klikoni në butonin Administrata > Sistemi > Përditësimi i Qendrës, duhet të shihni të gjitha shtojcat e instaluara në ekranin e mëposhtëm:
Këtu mund të përditësoni shtojcat ekzistuese dhe gjithashtu të instaloni shtojcat e disponueshme. Pas instalimit ose përditësimit të shtojcave të kërkuara, do t'ju duhet të klikoni në butonin \Rinisni\ për të rifilluar sistemin për të përditësuar ndryshimet.
konkluzioni
Në tutorialin e mësipërm, mësuam të instalojmë SonarQube në Ubuntu 16.04 dhe përdorimin bazë të SonarQube. Tani mund ta vendosni lehtësisht në mjedisin e prodhimit. Mos ngurroni të më komentoni nëse keni nevojë për ndonjë ndihmë.