Kā instalēt SonarQube operētājsistēmā CentOS 7

SonarQube ir atvērtā pirmkoda rīks kvalitātes sistēmas izstrādei. Tas ir rakstīts Java valodā un atbalsta vairākas datu bāzes. Tas nodrošina iespēju nepārtraukti pārbaudīt kodu, parādīt lietojumprogrammas stāvokli un izcelt nesen ieviestās problēmas. Tajā ir iekļauti koda analizatori, kas ir aprīkoti sarežģītu problēmu noteikšanai. Tas arī viegli integrējas ar DevOps.

Šajā apmācībā mēs instalēsim jaunāko SonarQube versiju operētājsistēmā CentOS 7.

Piezīme. Šis dokuments ir atjaunināts kopš tā sākotnējās publicēšanas. Skatiet zemsvītras piezīmēs sadaļu "Kļūdas".

Priekšnoteikumi

  • Vultr 64 bitu CentOS 7 servera gadījums ar vismaz 2 GB RAM.
  • Sudo lietotāju .

1. darbība. Veiciet sistēmas atjaunināšanu

Pirms pakotņu instalēšanas CentOS servera instancē ieteicams atjaunināt sistēmu. Piesakieties, izmantojot sudo lietotāju, un palaidiet šādas komandas, lai atjauninātu sistēmu.

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

Kad sistēma ir pabeigusi atsāknēšanu, vēlreiz piesakieties kā sudo lietotājs un pārejiet pie nākamās darbības.

2. darbība. Instalējiet Java

Lejupielādējiet Oracle SE JDK RPM pakotni, ierakstot:

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"

Instalējiet lejupielādēto pakotni, ierakstot:

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

Tagad varat pārbaudīt Java versiju, ierakstot:

java -version

3. darbība. Instalējiet un konfigurējiet PostgreSQL

Instalējiet PostgreSQL repozitoriju, ierakstot:

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

Instalējiet PostgreSQL datu bāzes serveri, palaižot:

sudo yum -y install postgresql96-server postgresql96-contrib

Inicializējiet datu bāzi:

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

Rediģējiet, /var/lib/pgsql/9.6/data/pg_hba.conflai iespējotu uz MD5 balstītu autentifikāciju.

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

Atrodiet šādas rindas un mainiet peeruz trustun idnetuz 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

Pēc atjaunināšanas konfigurācijai vajadzētu izskatīties kā parādīts tālāk.

# 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

Startējiet PostgreSQL serveri un iespējojiet tā automātisku palaišanu sāknēšanas laikā, izpildot:

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

Mainiet noklusējuma PostgreSQL lietotāja paroli.

sudo passwd postgres

Pārslēdzieties uz postgreslietotāju.

su - postgres

Izveidojiet jaunu lietotāju, ierakstot:

createuser sonar

Pārslēdzieties uz PostgreSQL čaulu.

psql

Iestatiet paroli jaunizveidotajam SonarQube datu bāzes lietotājam.

ALTER USER sonar WITH ENCRYPTED password 'StrongPassword';

Izveidojiet jaunu datubāzi PostgreSQL datubāzei, izpildot:

CREATE DATABASE sonar OWNER sonar;

Iziet no psqlčaulas:

\q

Pārslēdzieties atpakaļ uz sudo lietotāju, izpildot exitkomandu.

4. darbība. Lejupielādējiet un konfigurējiet SonarQube

Lejupielādējiet SonarQube instalēšanas failu arhīvu.

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

Jūs vienmēr varat meklēt saiti uz jaunāko lietojumprogrammas versiju SonarQube lejupielādes lapā .

Instalējiet unzip, izpildot:

sudo yum -y install unzip

Izsaiņojiet arhīvu, izmantojot šo komandu.

sudo unzip sonarqube-6.4.zip -d /opt

Pārdēvējiet direktoriju:

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

Atveriet SonarQube konfigurācijas failu, izmantojot savu iecienītāko teksta redaktoru.

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

Atrodiet šādas rindas.

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

Atceliet komentārus un norādiet iepriekš izveidotās datu bāzes PostgreSQL lietotājvārdu un paroli. Tam vajadzētu izskatīties šādi:

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

Tālāk atrodiet:

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

Atceliet rindiņas komentāru, saglabājiet failu un izejiet no redaktora.

5. darbība: konfigurējiet Systemd pakalpojumu

SonarQube var palaist tieši, izmantojot instalēšanas pakotnē iekļauto starta skriptu. Ērtības labad SonarQube ir jāiestata Systemd vienības fails.

sudo nano /etc/systemd/system/sonar.service

Aizpildiet failu ar:

[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

Sāciet lietojumprogrammu, palaižot:

sudo systemctl start sonar

Iespējojiet SonarQube pakalpojuma automātisku palaišanu sāknēšanas laikā.

sudo systemctl enable sonar

Lai pārbaudītu, vai pakalpojums darbojas, palaidiet:

sudo systemctl status sonar

5. darbība: konfigurējiet reverso starpniekserveri

Pēc noklusējuma SonarQube klausās localhost portā 9000. Šajā apmācībā mēs izmantosim Apache kā reverso starpniekserveri, lai lietojumprogrammai varētu piekļūt, izmantojot standarta HTTP portu. Instalējiet Apache tīmekļa serveri, izpildot:

sudo yum -y install httpd

Izveidojiet jaunu virtuālo saimniekdatoru.

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

Aizpildiet failu ar:

<VirtualHost *:80>  
    ServerName sonar.yourdomain.com
    ServerAdmin [email protected]
    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>

Palaidiet Apache un iespējojiet to automātiski palaist sāknēšanas laikā:

sudo systemctl start httpd
sudo systemctl enable httpd

6. darbība: konfigurējiet ugunsmūri

Atļaujiet nepieciešamo HTTP portu, izmantojot sistēmas ugunsmūri.

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

Sāciet pakalpojumu SonarQube:

sudo systemctl start sonar

Jums būs arī jāatspējo SELinux:

sudo setenforce 0

SonarQube ir instalēts jūsu serverī, piekļūstiet informācijas panelim tālāk norādītajā adresē.

http://sonar.yourdomain.com

Piesakieties, izmantojot sākotnējo administratora kontu, adminun admin. Tagad varat izmantot SonarQube, lai nepārtraukti analizētu jūsu rakstīto kodu.


Errata

Ja instalējat SonarQube 7.1 (vai jaunāku), veiciet tālāk norādītās izmaiņas, jo jaunākas Elasticsearch versijas nevar palaist kā root lietotājs.

  • Atjaunināšanas atļaujas: chown -R sonar:sonar /opt/sonarqube
  • Modificēt /opt/sonarqube/bin/linux-x86-64/sonar.sh, mainīt #RUNASuz " sonar".
  • Modificēt /etc/systemd/system/sonar.service, mainīt lietotāju grupu uz " sonar".

Instalējiet Plesk operētājsistēmā CentOS 7

Instalējiet Plesk operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Plesk ir patentēts tīmekļa mitinātāja vadības panelis, kas ļauj lietotājiem administrēt savas personīgās un/vai klientu vietnes, datu bāzes

Kā instalēt Squid starpniekserveri CentOS

Kā instalēt Squid starpniekserveri CentOS

Squid ir populāra bezmaksas Linux programma, kas ļauj izveidot pāradresācijas tīmekļa starpniekserveri. Šajā rokasgrāmatā jūs redzēsit, kā instalēt Squid uz CentOS, lai jūs pārvērstu

Kā instalēt Lighttpd (LLMP Stack) operētājsistēmā CentOS 6

Kā instalēt Lighttpd (LLMP Stack) operētājsistēmā CentOS 6

Ievads Lighttpd ir Apache dakša, kuras mērķis ir daudz mazāk resursietilpīgs. Tas ir viegls, tāpēc arī tā nosaukums ir diezgan vienkārši lietojams. Instalēšana

Statiskā tīkla un IPv6 konfigurēšana operētājsistēmā CentOS 7

Statiskā tīkla un IPv6 konfigurēšana operētājsistēmā CentOS 7

VULTR nesen veica izmaiņas, un tagad visam vajadzētu darboties labi, ja ir iespējots NetworkManager. Ja vēlaties atspējot

Icinga2 modificēšana, lai izmantotu galveno/klienta modeli operētājsistēmā CentOS 6 vai CentOS 7

Icinga2 modificēšana, lai izmantotu galveno/klienta modeli operētājsistēmā CentOS 6 vai CentOS 7

Icinga2 ir spēcīga uzraudzības sistēma, un, ja to izmanto galvenā klienta modelī, tā var aizstāt vajadzību pēc NRPE balstītām uzraudzības pārbaudēm. Meistars-klients

Kā instalēt Apache Cassandra 3.11.x operētājsistēmā CentOS 7

Kā instalēt Apache Cassandra 3.11.x operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Apache Cassandra ir bezmaksas un atvērtā koda NoSQL datu bāzes pārvaldības sistēma, kas ir izstrādāta, lai nodrošinātu mērogojamību, hig.

Kā instalēt Microweber operētājsistēmā CentOS 7

Kā instalēt Microweber operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Microweber ir atvērtā koda vilkšanas un nomešanas CMS un tiešsaistes veikals. Microweber pirmkods tiek mitināts vietnē GitHub. Šī rokasgrāmata jums parādīs

Kā instalēt Mattermost 4.1 operētājsistēmā CentOS 7

Kā instalēt Mattermost 4.1 operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Mattermost ir atvērtā pirmkoda, pašmitināta alternatīva Slack SAAS ziņojumapmaiņas pakalpojumam. Citiem vārdiem sakot, izmantojot Mattermost, jūs apm

Minecraft serveru tīkla izveide ar BungeeCord operētājsistēmā Debian 8, Debian 9 vai CentOS 7

Minecraft serveru tīkla izveide ar BungeeCord operētājsistēmā Debian 8, Debian 9 vai CentOS 7

Kas jums būs nepieciešams Vultr VPS ar vismaz 1 GB RAM. SSH piekļuve (ar root/administratora tiesībām). 1. darbība: BungeeCord instalēšana Vispirms vispirms

Ļauj šifrēt vietnē Plesk

Ļauj šifrēt vietnē Plesk

Plesk vadības panelī ir ļoti jauka Lets Encrypt integrācija. Lets Encrypt ir viens no vienīgajiem SSL nodrošinātājiem, kas pilnībā izsniedz sertifikātus

Ļauj šifrēt cPanel

Ļauj šifrēt cPanel

Lets Encrypt ir sertifikātu iestāde, kas nodrošina SSL sertifikātus bez maksas. cPanel ir izveidojis glītu integrāciju, lai jūs un jūsu klients

Kā instalēt Concrete5 operētājsistēmā CentOS 7

Kā instalēt Concrete5 operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Concrete5 ir atvērtā pirmkoda CMS, kas piedāvā daudzas atšķirīgas un noderīgas funkcijas, lai palīdzētu redaktoriem viegli izveidot saturu.

Kā instalēt pārskata paneli sistēmā CentOS 7

Kā instalēt pārskata paneli sistēmā CentOS 7

Vai izmantojat citu sistēmu? Pārskatīšanas padome ir bezmaksas atvērtā pirmkoda rīks pirmkoda, dokumentācijas, attēlu un daudz ko citu pārskatīšanai. Tā ir tīmekļa programmatūra

Iestatiet HTTP autentifikāciju, izmantojot Nginx operētājsistēmā CentOS 7

Iestatiet HTTP autentifikāciju, izmantojot Nginx operētājsistēmā CentOS 7

Šajā rokasgrāmatā jūs uzzināsit, kā iestatīt HTTP autentifikāciju Nginx tīmekļa serverim, kas darbojas operētājsistēmā CentOS 7. Prasības Lai sāktu darbu, jums būs nepieciešams

Kā instalēt YOURLS operētājsistēmā CentOS 7

Kā instalēt YOURLS operētājsistēmā CentOS 7

YOURLS (Your Own URL Shortener) ir atvērtā koda URL saīsināšanas un datu analīzes lietojumprogramma. Šajā rakstā mēs apskatīsim instalēšanas procesu

Kā instalēt un konfigurēt ArangoDB operētājsistēmā CentOS 7

Kā instalēt un konfigurēt ArangoDB operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Ievads ArangoDB ir atvērtā koda NoSQL datu bāze ar elastīgu datu modeli dokumentiem, grafikiem un atslēgu vērtībām. Tas ir

Etckeeper izmantošana /etc versiju kontrolei

Etckeeper izmantošana /etc versiju kontrolei

Ievads /etc/ direktorijam ir izšķiroša nozīme Linux sistēmas darbībā. Iemesls tam ir gandrīz visas sistēmas konfigurācijas

Kāpēc jums vajadzētu izmantot SSHFS? Kā uzstādīt attālo failu sistēmu ar SSHFS operētājsistēmā CentOS 6

Kāpēc jums vajadzētu izmantot SSHFS? Kā uzstādīt attālo failu sistēmu ar SSHFS operētājsistēmā CentOS 6

Daudzi sistēmu administratori pārvalda lielu daudzumu serveru. Ja failiem ir jāpiekļūst dažādos serveros, piesakieties katrā atsevišķi apm

Half Life 2 servera iestatīšana operētājsistēmā CentOS 6

Half Life 2 servera iestatīšana operētājsistēmā CentOS 6

Šajā apmācībā tiks apskatīts Half Life 2 spēļu servera instalēšanas process sistēmā CentOS 6. 1. darbība: priekšnosacījumu instalēšana Lai iestatītu ou

Kā instalēt Laravel GitScrum operētājsistēmā CentOS 7

Kā instalēt Laravel GitScrum operētājsistēmā CentOS 7

Laravel GitScrum jeb GitScrum ir atvērtā pirmkoda produktivitātes rīks, kas izstrādāts, lai palīdzētu izstrādātāju komandām ieviest Scrum metodoloģiju līdzīgā veidā.

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mākslīgais intelekts nav nākotnē, tas ir šeit, tagadnē. Šajā emuārā lasiet, kā mākslīgā intelekta lietojumprogrammas ir ietekmējušas dažādas nozares.

DDOS uzbrukumi: īss pārskats

DDOS uzbrukumi: īss pārskats

Vai arī jūs esat DDOS uzbrukumu upuris un esat neizpratnē par profilakses metodēm? Izlasiet šo rakstu, lai atrisinātu savus jautājumus.

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Iespējams, esat dzirdējuši, ka hakeri pelna daudz naudas, bet vai esat kādreiz domājuši, kā viņi nopelna šādu naudu? pārrunāsim.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Vai vēlaties redzēt revolucionārus Google izgudrojumus un to, kā šie izgudrojumi mainīja katra cilvēka dzīvi mūsdienās? Pēc tam lasiet emuārā, lai redzētu Google izgudrojumus.

Piektdiena: kas notika ar AI vadītām automašīnām?

Piektdiena: kas notika ar AI vadītām automašīnām?

Pašpiedziņas automobiļu koncepcija izbraukt uz ceļiem ar mākslīgā intelekta palīdzību ir mūsu sapnis jau kādu laiku. Bet, neskatoties uz vairākiem solījumiem, tie nekur nav redzami. Lasiet šo emuāru, lai uzzinātu vairāk…

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Zinātnei strauji attīstoties, pārņemot lielu daļu mūsu pūļu, palielinās arī risks pakļaut sevi neizskaidrojamai singularitātei. Izlasiet, ko singularitāte varētu nozīmēt mums.

Datu glabāšanas evolūcija – infografika

Datu glabāšanas evolūcija – infografika

Datu uzglabāšanas metodes ir attīstījušās kopš datu dzimšanas. Šajā emuārā ir aprakstīta datu uzglabāšanas attīstība, pamatojoties uz infografiku.

Lielo datu atsauces arhitektūras slāņu funkcijas

Lielo datu atsauces arhitektūras slāņu funkcijas

Lasiet emuāru, lai vienkāršākā veidā uzzinātu dažādus lielo datu arhitektūras slāņus un to funkcijas.

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

Šajā digitālajā pasaulē viedās mājas ierīces ir kļuvušas par būtisku dzīves sastāvdaļu. Šeit ir daži pārsteidzoši viedo mājas ierīču ieguvumi, lai padarītu mūsu dzīvi dzīves vērtu un vienkāršāku.

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

Nesen Apple izlaida macOS Catalina 10.15.4 papildinājuma atjauninājumu, lai novērstu problēmas, taču šķiet, ka atjauninājums rada vairāk problēmu, kas izraisa Mac datoru bloķēšanu. Izlasiet šo rakstu, lai uzzinātu vairāk