A SonarQube telepítése CentOS 7 rendszeren

A SonarQube egy nyílt forráskódú eszköz a minőségbiztosítási rendszerek fejlesztéséhez. Java nyelven íródott, és több adatbázist is támogat. Lehetővé teszi a kód folyamatos ellenőrzését, az alkalmazás állapotának megjelenítését és az újonnan bevezetett problémák kiemelését. Kódelemzőket tartalmaz, amelyek fel vannak szerelve a trükkös problémák észlelésére. Könnyen integrálható a DevOps-szal is.

Ebben az oktatóanyagban a SonarQube legújabb verzióját telepítjük CentOS 7 rendszerre.

Megjegyzés: Ezt a dokumentumot eredeti közzététele óta frissítették. Lásd az „Errata” részt a lábjegyzetekben.

Előfeltételek

  • Vultr 64 bites CentOS 7 szerverpéldány legalább 2 GB RAM-mal.
  • Egy sudo felhasználó .

1. lépés: Végezzen rendszerfrissítést

Mielőtt bármilyen csomagot telepítene a CentOS-kiszolgálópéldányra, javasoljuk a rendszer frissítését. Jelentkezzen be a sudo felhasználóval, és futtassa a következő parancsokat a rendszer frissítéséhez.

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

Miután a rendszer befejezte az újraindítást, jelentkezzen be újra sudo felhasználóként, és folytassa a következő lépéssel.

2. lépés: Telepítse a Java-t

Töltse le az Oracle SE JDK RPM csomagot a következő beírásával:

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"

Telepítse a letöltött csomagot a következő beírásával:

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

Most már ellenőrizheti a Java verzióját a következő beírásával:

java -version

3. lépés: Telepítse és konfigurálja a PostgreSQL-t

Telepítse a PostgreSQL tárolót a következő beírásával:

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

Telepítse a PostgreSQL adatbázis-kiszolgálót a következő futtatásával:

sudo yum -y install postgresql96-server postgresql96-contrib

Az adatbázis inicializálása:

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

Szerkessze az /var/lib/pgsql/9.6/data/pg_hba.confMD5-alapú hitelesítés engedélyezéséhez.

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

Keresse meg a következő sorokat, és váltson peererre trustés idnet-ra 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

Frissítés után a konfigurációnak az alábbiak szerint kell kinéznie.

# 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

Indítsa el a PostgreSQL szervert, és engedélyezze, hogy rendszerindításkor automatikusan elinduljon a következő futással:

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

Módosítsa az alapértelmezett PostgreSQL-felhasználó jelszavát.

sudo passwd postgres

Váltás a postgresfelhasználóra.

su - postgres

Hozzon létre egy új felhasználót a következő beírásával:

createuser sonar

Váltson a PostgreSQL rendszerhéjra.

psql

Állítson be jelszót a SonarQube adatbázis újonnan létrehozott felhasználójának.

ALTER USER sonar WITH ENCRYPTED password 'StrongPassword';

Hozzon létre egy új adatbázist a PostgreSQL adatbázishoz a következő futtatással:

CREATE DATABASE sonar OWNER sonar;

Kilépés a psqlhéjból:

\q

Váltson vissza a sudo felhasználóra a exitparancs futtatásával .

4. lépés: Töltse le és konfigurálja a SonarQube-ot

Töltse le a SonarQube telepítőfájl archívumát.

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

A SonarQube letöltési oldalán bármikor megkeresheti az alkalmazás legújabb verziójára mutató hivatkozást .

Telepítse a kicsomagolást a következő futtatásával:

sudo yum -y install unzip

Csomagolja ki az archívumot a következő paranccsal.

sudo unzip sonarqube-6.4.zip -d /opt

A könyvtár átnevezése:

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

Nyissa meg a SonarQube konfigurációs fájlt kedvenc szövegszerkesztőjével.

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

Keresse meg a következő sorokat.

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

Törölje a megjegyzéseket, és adja meg a korábban létrehozott adatbázis PostgreSQL felhasználónevét és jelszavát. Így kell kinéznie:

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

Ezután keresse meg:

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

Törölje a sor megjegyzését, mentse a fájlt, és lépjen ki a szerkesztőből.

5. lépés: A Systemd szolgáltatás konfigurálása

A SonarQube közvetlenül elindítható a telepítőcsomagban található indító szkript segítségével. A kényelem érdekében be kell állítania egy Systemd unit fájlt a SonarQube számára.

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

Töltse fel a fájlt a következővel:

[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

Indítsa el az alkalmazást a következő futtatásával:

sudo systemctl start sonar

Engedélyezze a SonarQube szolgáltatás automatikus indulását rendszerindításkor.

sudo systemctl enable sonar

A szolgáltatás futásának ellenőrzéséhez futtassa:

sudo systemctl status sonar

5. lépés: A fordított proxy konfigurálása

Alapértelmezés szerint a SonarQube a 9000-es porton figyeli a localhost-ot. Ebben az oktatóanyagban az Apache-t fogjuk használni fordított proxyként, így az alkalmazás a szabványos HTTP-porton keresztül érhető el. Telepítse az Apache webszervert a következő futtatásával:

sudo yum -y install httpd

Hozzon létre egy új virtuális gazdagépet.

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

Töltse fel a fájlt a következővel:

<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>

Indítsa el az Apache-t, és engedélyezze, hogy rendszerindításkor automatikusan elinduljon:

sudo systemctl start httpd
sudo systemctl enable httpd

6. lépés: Konfigurálja a tűzfalat

Engedélyezze a szükséges HTTP-portot a rendszer tűzfalán.

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

Indítsa el a SonarQube szolgáltatást:

sudo systemctl start sonar

A SELinuxot is le kell tiltania:

sudo setenforce 0

A SonarQube telepítve van a szerverére, nyissa meg az irányítópultot a következő címen.

http://sonar.yourdomain.com

Jelentkezzen be a kezdeti rendszergazdai fiókkal, adminmajd admin. Mostantól a SonarQube segítségével folyamatosan elemezheti a megírt kódot.


Hibajegyzék

A SonarQube 7.1 (vagy újabb) telepítésekor hajtsa végre az alábbi módosításokat, mert az Elasticsearch újabb verziói nem futtathatók root felhasználóként.

  • Frissítési engedélyek: chown -R sonar:sonar /opt/sonarqube
  • Módosít /opt/sonarqube/bin/linux-x86-64/sonar.sh, módosíts #RUNASerre: " sonar".
  • Módosítás /etc/systemd/system/sonar.service, módosítsa a felhasználói csoportot a következőre: " sonar".

Telepítse a Plesket a CentOS 7 rendszeren

Telepítse a Plesket a CentOS 7 rendszeren

Más rendszert használ? A Plesk egy szabadalmaztatott webtárhely-vezérlőpult, amely lehetővé teszi a felhasználók számára, hogy adminisztrálják személyes és/vagy ügyfeleik webhelyeit, adatbázisait

A Squid Proxy telepítése a CentOS rendszeren

A Squid Proxy telepítése a CentOS rendszeren

A Squid egy népszerű, ingyenes Linux-program, amely lehetővé teszi továbbítási webproxy létrehozását. Ebben az útmutatóban megtudhatja, hogyan telepítheti a Squid-et a CentOS rendszerre, hogy megfordítsa

A Lighttpd (LLMP Stack) telepítése a CentOS 6 rendszeren

A Lighttpd (LLMP Stack) telepítése a CentOS 6 rendszeren

Bevezetés A Lighttpd az Apache forkja, amely sokkal kevésbé erőforrás-igényes. Könnyű, innen kapta a nevét, és meglehetősen egyszerű a használata. Telepítés

A statikus hálózat és az IPv6 konfigurálása CentOS 7 rendszeren

A statikus hálózat és az IPv6 konfigurálása CentOS 7 rendszeren

A VULTR a közelmúltban változtatásokat hajtott végre a saját oldalukon, és most már mindennek jól kell működnie, ha a NetworkManager engedélyezve van. Ha szeretné letiltani

Az Icinga2 módosítása a mester/kliens modell használatához CentOS 6 vagy CentOS 7 rendszeren

Az Icinga2 módosítása a mester/kliens modell használatához CentOS 6 vagy CentOS 7 rendszeren

Az Icinga2 egy hatékony felügyeleti rendszer, és mester-kliens modellben használva helyettesítheti az NRPE-alapú felügyeleti ellenőrzések szükségességét. A mester-kliens

Az Apache Cassandra 3.11.x telepítése CentOS 7 rendszeren

Az Apache Cassandra 3.11.x telepítése CentOS 7 rendszeren

Más rendszert használ? Az Apache Cassandra egy ingyenes és nyílt forráskódú NoSQL adatbázis-kezelő rendszer, amelyet úgy terveztek, hogy biztosítsa a méretezhetőséget,

A Microweber telepítése CentOS 7 rendszeren

A Microweber telepítése CentOS 7 rendszeren

Más rendszert használ? A Microweber egy nyílt forráskódú drag and drop CMS és online bolt. A Microweber forráskódja a GitHubon található. Ez az útmutató megmutatja neked

A Vanilla Forum telepítése a CentOS 7 rendszeren

A Vanilla Forum telepítése a CentOS 7 rendszeren

Más rendszert használ? A Vanilla forum egy nyílt forráskódú, PHP-ben írt fórumalkalmazás. Ez egy teljesen testreszabható, könnyen használható, és támogatja a külsőt

A Mattermost 4.1 telepítése CentOS 7 rendszeren

A Mattermost 4.1 telepítése CentOS 7 rendszeren

Más rendszert használ? A Mattermost egy nyílt forráskódú, saját üzemeltetésű alternatívája a Slack SAAS üzenetküldő szolgáltatásnak. Más szóval, a Mattermost segítségével kb

Minecraft szerverek hálózatának létrehozása BungeeCord segítségével Debian 8, Debian 9 vagy CentOS 7 rendszeren

Minecraft szerverek hálózatának létrehozása BungeeCord segítségével Debian 8, Debian 9 vagy CentOS 7 rendszeren

Mire lesz szüksége Egy Vultr VPS legalább 1 GB RAM-mal. SSH hozzáférés (root/adminisztrátori jogosultságokkal). 1. lépés: A BungeeCord telepítése Először is

Encrypt on Plesk

Encrypt on Plesk

A Plesk vezérlőpult nagyon szép integrációt kínál a Lets Encrypt számára. A Lets Encrypt egyike az egyetlen SSL-szolgáltatónak, amely teljes tanúsítványt ad ki

Lehetővé teszi a titkosítást a cPanel-en

Lehetővé teszi a titkosítást a cPanel-en

A Lets Encrypt egy tanúsító hatóság, amely ingyenes SSL-tanúsítványokat biztosít. A cPanel ügyes integrációt épített ki, így Ön és ügyfele

A Concrete5 telepítése CentOS 7 rendszeren

A Concrete5 telepítése CentOS 7 rendszeren

Más rendszert használ? A Concrete5 egy nyílt forráskódú CMS, amely számos megkülönböztető és hasznos funkciót kínál, hogy segítse a szerkesztőket a tartalom egyszerű létrehozásában.

Hogyan telepítsük az értékelő táblát a CentOS 7 rendszeren

Hogyan telepítsük az értékelő táblát a CentOS 7 rendszeren

Más rendszert használ? A Review Board egy ingyenes és nyílt forráskódú eszköz a forráskód, a dokumentáció, a képek és még sok más áttekintésére. Ez egy web alapú szoftver

Állítsa be a HTTP-hitelesítést az Nginx segítségével a CentOS 7 rendszeren

Állítsa be a HTTP-hitelesítést az Nginx segítségével a CentOS 7 rendszeren

Ebből az útmutatóból megtudhatja, hogyan állíthat be HTTP-hitelesítést egy CentOS 7 rendszeren futó Nginx webszerverhez. Követelmények A kezdéshez szüksége lesz a következőre:

A GoAccess telepítése a CentOS 7 rendszeren

A GoAccess telepítése a CentOS 7 rendszeren

Más rendszert használ? A GoAccess egy nyílt forráskódú webnapló-elemző. Használhatja naplók valós idejű elemzésére akár a terminálon, akár a

A YOURLS telepítése a CentOS 7 rendszeren

A YOURLS telepítése a CentOS 7 rendszeren

A YOURLS (Your Own URL Shortener) egy nyílt forráskódú URL-rövidítő és adatelemző alkalmazás. Ebben a cikkben a telepítés folyamatával foglalkozunk

Az ArangoDB telepítése és konfigurálása a CentOS 7 rendszeren

Az ArangoDB telepítése és konfigurálása a CentOS 7 rendszeren

Más rendszert használ? Bevezetés Az ArangoDB egy nyílt forráskódú NoSQL adatbázis, amely rugalmas adatmodellt kínál dokumentumokhoz, grafikonokhoz és kulcsértékekhez. Ez

Az Etckeeper használata az /etc verziókezeléshez

Az Etckeeper használata az /etc verziókezeléshez

Bevezetés Az /etc/ könyvtár kritikus szerepet játszik a Linux rendszer működésében. Ennek az az oka, hogy szinte minden rendszerkonfiguráció

Miért érdemes SSHFS-t használni? Távoli fájlrendszer csatlakoztatása SSHFS-sel a CentOS 6 rendszeren

Miért érdemes SSHFS-t használni? Távoli fájlrendszer csatlakoztatása SSHFS-sel a CentOS 6 rendszeren

Sok rendszergazda nagy mennyiségű kiszolgálót kezel. Ha a fájlokhoz különböző szervereken keresztül kell hozzáférni, mindegyikbe külön-külön kell bejelentkezni kb

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.

DDOS támadások: Rövid áttekintés

DDOS támadások: Rövid áttekintés

Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.

Essential péntek: Mi történt az AI-vezérelt autókkal?

Essential péntek: Mi történt az AI-vezérelt autókkal?

Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.

Az adattárolás fejlődése – Infografika

Az adattárolás fejlődése – Infografika

Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.

A Big Data Reference Architecture Layerek funkciói

A Big Data Reference Architecture Layerek funkciói

Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

Az Apple a közelmúltban kiadott egy kiegészítést a macOS Catalina 10.15.4-hez a problémák megoldására, de úgy tűnik, hogy a frissítés több problémát okoz, ami a Mac gépek blokkolásához vezet. További információért olvassa el ezt a cikket