Hvernig á að setja upp SonarQube á CentOS 7

SonarQube er opinn hugbúnaður til að þróa gæðakerfi. Það er skrifað í Java og styður marga gagnagrunna. Það veitir möguleika til að skoða kóða stöðugt, sýna heilsu forrits og varpa ljósi á nýlega kynnt mál. Það inniheldur kóðagreiningartæki sem eru búnir til að greina erfið vandamál. Það er líka auðvelt að samþætta DevOps.

Í þessari kennslu munum við setja upp nýjustu útgáfuna af SonarQube á CentOS 7.

Athugið: Þetta skjal hefur verið uppfært síðan það var gefið út. Sjá kaflann „Errata“ í neðanmálsgreinum.

Forkröfur

  • Vultr 64-bita CentOS 7 netþjónstilvik með að minnsta kosti 2 GB vinnsluminni.
  • A sudo notandi .

Skref 1: Framkvæmdu kerfisuppfærslu

Áður en einhver pakki er settur upp á CentOS netþjónstilvikinu er mælt með því að uppfæra kerfið. Skráðu þig inn með sudo notandanum og keyrðu eftirfarandi skipanir til að uppfæra kerfið.

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

Þegar kerfið hefur lokið endurræsingu skaltu skrá þig inn aftur sem sudo notandi og halda áfram í næsta skref.

Skref 2: Settu upp Java

Sæktu Oracle SE JDK RPM pakkann með því að slá inn:

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"

Settu niður pakkann með því að slá inn:

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

Þú getur nú athugað útgáfu Java með því að slá inn:

java -version

Skref 3: Settu upp og stilltu PostgreSQL

Settu upp PostgreSQL geymslu með því að slá inn:

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

Settu upp PostgreSQL gagnagrunnsþjón með því að keyra:

sudo yum -y install postgresql96-server postgresql96-contrib

Frumstilla gagnagrunninn:

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

Breyttu til /var/lib/pgsql/9.6/data/pg_hba.confað virkja MD5-byggða auðkenningu.

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

Finndu eftirfarandi línur og breyttu peerí trustog 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

Þegar uppfærsla hefur verið uppfærð ætti uppsetningin að líta út eins og sú sem sýnd er hér að neðan.

# 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

Ræstu PostgreSQL miðlara og gerðu það kleift að ræsa sjálfkrafa við ræsingu með því að keyra:

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

Breyttu lykilorðinu fyrir sjálfgefinn PostgreSQL notanda.

sudo passwd postgres

Skiptu yfir í postgresnotanda.

su - postgres

Búðu til nýjan notanda með því að slá inn:

createuser sonar

Skiptu yfir í PostgreSQL skelina.

psql

Stilltu lykilorð fyrir nýstofnaðan notanda fyrir SonarQube gagnagrunninn.

ALTER USER sonar WITH ENCRYPTED password 'StrongPassword';

Búðu til nýjan gagnagrunn fyrir PostgreSQL gagnagrunn með því að keyra:

CREATE DATABASE sonar OWNER sonar;

Farið úr psqlskelinni:

\q

Skiptu aftur í sudo notandann með því að keyra exitskipunina.

Skref 4: Sæktu og stilltu SonarQube

Sæktu SonarQube uppsetningarskráasafnið.

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

Þú getur alltaf leitað að hlekknum á nýjustu útgáfuna af forritinu á SonarQube niðurhalssíðunni .

Settu upp unzip með því að keyra:

sudo yum -y install unzip

Taktu niður skjalasafnið með eftirfarandi skipun.

sudo unzip sonarqube-6.4.zip -d /opt

Endurnefna möppuna:

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

Opnaðu SonarQube stillingarskrána með uppáhalds textaritlinum þínum.

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

Finndu eftirfarandi línur.

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

Taktu úr athugasemdum og gefðu upp PostgreSQL notendanafn og lykilorð gagnagrunnsins sem við höfum búið til áður. Það ætti að líta svona út:

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

Næst skaltu finna:

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

Taktu úr athugasemdum við línuna, vistaðu skrána og farðu úr ritlinum.

Skref 5: Stilla Systemd þjónustu

SonarQube er hægt að ræsa beint með því að nota ræsiforskriftina sem fylgir uppsetningarpakkanum. Til þæginda ættir þú að setja upp Systemd einingaskrá fyrir SonarQube.

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

Fylltu skrána með:

[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

Ræstu forritið með því að keyra:

sudo systemctl start sonar

Virkjaðu SonarQube þjónustuna til að byrja sjálfkrafa við ræsingu.

sudo systemctl enable sonar

Til að athuga hvort þjónustan sé í gangi skaltu keyra:

sudo systemctl status sonar

Skref 5: Stilltu öfugt umboð

Sjálfgefið er að SonarQube hlustar á localhost á port 9000. Í þessari kennslu munum við nota Apache sem andstæða umboð þannig að hægt sé að nálgast forritið í gegnum venjulegu HTTP tengið. Settu upp Apache vefþjóninn með því að keyra:

sudo yum -y install httpd

Búðu til nýjan sýndargestgjafa.

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

Fylltu skrána með:

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

Ræstu Apache og gerðu það kleift að byrja sjálfkrafa við ræsingu:

sudo systemctl start httpd
sudo systemctl enable httpd

Skref 6: Stilltu eldvegg

Leyfðu nauðsynlegu HTTP-tengi í gegnum eldvegg kerfisins.

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

Byrjaðu SonarQube þjónustuna:

sudo systemctl start sonar

Þú þarft líka að slökkva á SELinux:

sudo setenforce 0

SonarQube er sett upp á netþjóninum þínum, fáðu aðgang að mælaborðinu á eftirfarandi heimilisfangi.

http://sonar.yourdomain.com

Skráðu þig inn með upphaflega stjórnandareikningnum adminog admin. Þú getur nú notað SonarQube til að greina stöðugt kóðann sem þú hefur skrifað.


Errata

Ef þú setur upp SonarQube 7.1 (eða nýrri), gerðu breytingarnar hér að neðan vegna þess að ekki er hægt að keyra nýrri útgáfur af Elasticsearch sem rótnotandi.

  • Uppfæra heimildir: chown -R sonar:sonar /opt/sonarqube
  • Breyta /opt/sonarqube/bin/linux-x86-64/sonar.sh, breyta #RUNASí " sonar".
  • Breyttu /etc/systemd/system/sonar.service, breyttu notendahópnum í " sonar".

Settu upp Plesk á CentOS 7

Settu upp Plesk á CentOS 7

Að nota annað kerfi? Plesk er sérstakt stjórnborð fyrir vefþjón sem gerir notendum kleift að stjórna persónulegum og/eða viðskiptavinum vefsíðum sínum, gagnagrunnum

Hvernig á að setja upp Squid Proxy á CentOS

Hvernig á að setja upp Squid Proxy á CentOS

Smokkfiskur er vinsælt, ókeypis Linux forrit sem gerir þér kleift að búa til framsendingarforrit á vefnum. Í þessari handbók muntu sjá hvernig á að setja upp Squid á CentOS til að snúa þér

Hvernig á að setja upp Lighttpd (LLMP Stack) á CentOS 6

Hvernig á að setja upp Lighttpd (LLMP Stack) á CentOS 6

Inngangur Lighttpd er gaffal af Apache sem miðar að því að vera miklu minna auðlindafrekt. Hann er léttur, þess vegna heitir hann, og er frekar einfaldur í notkun. Uppsetning

Stilla Static Networking og IPv6 á CentOS 7

Stilla Static Networking og IPv6 á CentOS 7

VULTR hefur nýlega gert breytingar á enda þeirra og allt ætti nú að virka vel út úr kassanum með NetworkManager virkt. Ef þú vilt slökkva á

Breytir Icinga2 til að nota Master/Client Model á CentOS 6 eða CentOS 7

Breytir Icinga2 til að nota Master/Client Model á CentOS 6 eða CentOS 7

Icinga2 er öflugt eftirlitskerfi og þegar það er notað í aðal-viðskiptavinamódel getur það komið í stað þörf fyrir NRPE-undirstaða vöktunareftirlit. Húsbóndinn

Hvernig á að setja upp Apache Cassandra 3.11.x á CentOS 7

Hvernig á að setja upp Apache Cassandra 3.11.x á CentOS 7

Að nota annað kerfi? Apache Cassandra er ókeypis og opinn uppspretta NoSQL gagnagrunnsstjórnunarkerfi sem er hannað til að veita sveigjanleika, háan

Hvernig á að setja upp Microweber á CentOS 7

Hvernig á að setja upp Microweber á CentOS 7

Að nota annað kerfi? Microweber er opinn uppspretta draga og sleppa CMS og netverslun. Microweber frumkóði er hýst á GitHub. Þessi handbók mun sýna þér

Hvernig á að setja upp Mattermost 4.1 á CentOS 7

Hvernig á að setja upp Mattermost 4.1 á CentOS 7

Að nota annað kerfi? Mattermost er opinn uppspretta, sjálfhýst valkostur við Slack SAAS skilaboðaþjónustuna. Með öðrum orðum, með Mattermost, þú ca

Að búa til net Minecraft netþjóna með BungeeCord á Debian 8, Debian 9 eða CentOS 7

Að búa til net Minecraft netþjóna með BungeeCord á Debian 8, Debian 9 eða CentOS 7

Það sem þú þarft Vultr VPS með að minnsta kosti 1GB af vinnsluminni. SSH aðgangur (með rót / stjórnunarréttindi). Skref 1: Uppsetning BungeeCord Fyrst af öllu

Láttu dulkóða á Plesk

Láttu dulkóða á Plesk

Plesk stjórnborðið er með mjög fallegri samþættingu fyrir Lets Encrypt. Lets Encrypt er ein af einu SSL veitunum sem gefa út skírteini að fullu

Láttu dulkóða á cPanel

Láttu dulkóða á cPanel

Lets Encrypt er vottunaryfirvöld sem sérhæfir sig í að útvega SSL vottorð án endurgjalds. cPanel hefur byggt upp snyrtilega samþættingu svo þú og viðskiptavinurinn þinn

Hvernig á að setja upp Concrete5 á CentOS 7

Hvernig á að setja upp Concrete5 á CentOS 7

Að nota annað kerfi? Concrete5 er opinn uppspretta CMS sem býður upp á marga áberandi og gagnlega eiginleika til að aðstoða ritstjóra við að framleiða efni auðveldlega og

Hvernig á að setja upp Review Board á CentOS 7

Hvernig á að setja upp Review Board á CentOS 7

Að nota annað kerfi? Review Board er ókeypis og opinn hugbúnaður til að skoða frumkóða, skjöl, myndir og margt fleira. Það er vefbundið hugbúnaðarstríð

Settu upp HTTP auðkenningu með Nginx á CentOS 7

Settu upp HTTP auðkenningu með Nginx á CentOS 7

Í þessari handbók munt þú læra hvernig á að setja upp HTTP auðkenningu fyrir Nginx vefþjón sem keyrir á CentOS 7. Kröfur Til að byrja þarftu að

Hvernig á að setja upp YOURLS á CentOS 7

Hvernig á að setja upp YOURLS á CentOS 7

YOURLS (Your Own URL Shortener) er opinn uppspretta vefslóða styttingar og gagnagreiningarforrit. Í þessari grein munum við fjalla um ferlið við uppsetningu

How to Install and Configure ArangoDB on CentOS 7

How to Install and Configure ArangoDB on CentOS 7

Using a Different System? Introduction ArangoDB is an open source NoSQL database with a flexible data model for documents, graphs, and key-values. It is

Notkun Etckeeper fyrir útgáfustýringu á /etc

Notkun Etckeeper fyrir útgáfustýringu á /etc

Inngangur /etc/ skrárinn gegnir mikilvægu hlutverki í því hvernig Linux kerfi virkar. Ástæðan fyrir þessu er sú að næstum allar kerfisstillingar

Af hverju ættir þú að nota SSHFS? Hvernig á að tengja fjarskráarkerfi með SSHFS á CentOS 6

Af hverju ættir þú að nota SSHFS? Hvernig á að tengja fjarskráarkerfi með SSHFS á CentOS 6

Margir kerfisstjórar stjórna miklu magni af netþjónum. Þegar aðgangur þarf að skrám á mismunandi netþjónum er innskráning á hvern og einn fyrir sig ca

Setja upp Half Life 2 Server á CentOS 6

Setja upp Half Life 2 Server á CentOS 6

Þessi kennsla mun fjalla um ferlið við að setja upp Half Life 2 leikjaþjón á CentOS 6 System. Skref 1: Forsendur settar upp Til að setja upp ou

Hvernig á að setja upp Laravel GitScrum á CentOS 7

Hvernig á að setja upp Laravel GitScrum á CentOS 7

Laravel GitScrum, eða GitScrum er opinn uppspretta framleiðniverkfæri hannað til að hjálpa þróunarteymi að innleiða Scrum aðferðafræðina á svipaðan hátt

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Gervigreind er ekki í framtíðinni, hún er hér í nútímanum Í þessu bloggi Lestu hvernig gervigreindarforrit hafa haft áhrif á ýmsa geira.

DDOS árásir: Stutt yfirlit

DDOS árásir: Stutt yfirlit

Ertu líka fórnarlamb DDOS árása og ruglaður með forvarnaraðferðirnar? Lestu þessa grein til að leysa spurningar þínar.

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Þú gætir hafa heyrt að tölvuþrjótar græða mikið af peningum, en hefur þú einhvern tíma velt því fyrir þér hvernig þeir vinna sér inn svona peninga? við skulum ræða.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Viltu sjá byltingarkenndar uppfinningar frá Google og hvernig þessar uppfinningar breyttu lífi hvers manns í dag? Lestu síðan til að blogga til að sjá uppfinningar frá Google.

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Hugmyndin um að sjálfkeyrandi bílar fari á göturnar með hjálp gervigreindar er draumur sem við höfum átt um tíma núna. En þrátt fyrir nokkur loforð eru þau hvergi sjáanleg. Lestu þetta blogg til að læra meira…

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Þar sem vísindin þróast hratt og taka yfir mikið af viðleitni okkar, eykst hættan á því að verða fyrir óútskýranlegri einstæðu. Lestu, hvað sérkenni gæti þýtt fyrir okkur.

Þróun gagnageymslu – Infographic

Þróun gagnageymslu – Infographic

Geymsluaðferðir gagna hafa verið að þróast gæti verið frá fæðingu gagna. Þetta blogg fjallar um þróun gagnageymslu á grundvelli upplýsingamynda.

Virkni Big Data Reference Architecture Layers

Virkni Big Data Reference Architecture Layers

Lestu bloggið til að þekkja mismunandi lög í Big Data Architecture og virkni þeirra á einfaldasta hátt.

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

Í þessum stafræna heimi hafa snjallheimilistæki orðið afgerandi hluti af lífi. Hér eru nokkrir ótrúlegir kostir snjallheimatækja um hvernig þau gera líf okkar þess virði að lifa því og einfaldara.

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

Nýlega gaf Apple út macOS Catalina 10.15.4 viðbótaruppfærslu til að laga vandamál en svo virðist sem uppfærslan sé að valda fleiri vandamálum sem leiða til múrsteins á Mac vélum. Lestu þessa grein til að læra meira