Ubuntu 16.04 Üzerinde SonarQube Kurulumu

SonarQube kaliteli sistem geliştirme için açık kaynaklı bir araçtır. Java ile yazılmıştır ve birden çok veritabanını destekler. Kodu sürekli denetleme, uygulamanın sağlığını gösterme ve yeni tanıtılan sorunları vurgulama yetenekleri sağlar. Zor sorunları tespit etmek için donatılmış kod analizörleri içerir. Ayrıca DevOps ile kolayca entegre olur.

Bu yazıda, Ubuntu 16.04'e SonarQube'un en son sürümünü yükleyeceğiz.

Ön şartlar

  • En az 2 GB RAM'e sahip bir Vultr 64 bit Ubuntu 16.04 sunucu örneği.
  • Bir sudo kullanıcısı .

1. Adım: Sistem güncellemesi yapın

Ubuntu sunucusu örneğine herhangi bir paket kurmadan önce, sistemin güncellenmesi önerilir. Sudo kullanıcısını kullanarak oturum açın ve sistemi güncellemek için aşağıdaki komutları çalıştırın.

sudo apt-get update
sudo apt-get -y upgrade

Adım 2: JDK'yı yükleyin

Oracle Java deposunu çalıştırarak sunucuya ekleyin.

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update

Oracle JDK'yı aşağıdakileri yazarak yükleyin:

sudo apt install oracle-java8-installer

Artık Java sürümünü yazarak kontrol edebilirsiniz:

java -version

Adım 3: PostgreSQL'i kurun ve yapılandırın

PostgreSQL deposunu kurun.

sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" >> /etc/apt/sources.list.d/pgdg.list'
wget -q https://www.postgresql.org/media/keys/ACCC4CF8.asc -O - | sudo apt-key add -

PostgreSQL veritabanı sunucusunu çalıştırarak kurun:

sudo apt-get -y install postgresql postgresql-contrib

PostgreSQL sunucusunu başlatın ve önyükleme sırasında çalıştırarak otomatik olarak başlamasını sağlayın:

sudo systemctl start postgresql
sudo systemctl enable postgresql

Varsayılan PostgreSQL kullanıcısının parolasını değiştirin.

sudo passwd postgres

postgresKullanıcıya geçin .

su - postgres

Yazarak yeni bir kullanıcı oluşturun:

createuser sonar

PostgreSQL kabuğuna geçin.

psql

SonarQube veritabanı için yeni oluşturulan kullanıcı için bir parola belirleyin.

ALTER USER sonar WITH ENCRYPTED password 'StrongPassword';

PostgreSQL veritabanı için çalıştırarak yeni bir veritabanı oluşturun:

CREATE DATABASE sonar OWNER sonar;

Kabuktan çık psql:

\q

exitKomutu çalıştırarak sudo kullanıcısına geri dönün .

Adım 4: SonarQube'ü indirin ve yapılandırın

SonarQube yükleyici dosyaları arşivini indirin.

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

SonarQube indirme sayfasında uygulamanın en son sürümünün bağlantısını her zaman arayabilirsiniz .

Unzip uygulamasını şu şekilde çalıştırın:

apt-get -y install unzip

Aşağıdaki komutu kullanarak arşivi açın.

sudo unzip sonarqube-6.4.zip -d /opt

Dizini yeniden adlandırın:

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

En sevdiğiniz metin düzenleyicisini kullanarak SonarQube yapılandırma dosyasını açın.

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

Aşağıdaki satırları bulun.

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

Daha önce oluşturduğumuz veritabanının PostgreSQL kullanıcı adını ve şifresini kaldırın ve sağlayın. Şöyle görünmelidir:

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

Ardından, şunu bulun:

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

Çizgiyi açın, dosyayı kaydedin ve düzenleyiciden çıkın.

5. Adım: Systemd hizmetini yapılandırma

SonarQube, yükleyici paketinde sağlanan başlangıç ​​komut dosyası kullanılarak doğrudan başlatılabilir. Kolaylık olması açısından, SonarQube için bir Systemd birim dosyası kurmalısınız.

nano /etc/systemd/system/sonar.service

Dosyayı şununla doldur:

[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

Uygulamayı çalıştırarak başlatın:

sudo systemctl start sonar

SonarQube hizmetinin önyükleme zamanında otomatik olarak başlamasını etkinleştirin.

sudo systemctl enable sonar

Hizmetin çalışıp çalışmadığını kontrol etmek için şunu çalıştırın:

sudo systemctl status sonar

5. Adım: Ters proxy'yi yapılandırın

Varsayılan olarak, SonarQube 9000 numaralı bağlantı noktasında localhost'u dinler. Bu öğreticide, uygulamaya standart HTTP bağlantı noktası üzerinden erişilebilmesi için Apache'yi ters proxy olarak kullanacağız. Apache web sunucusunu çalıştırarak kurun:

sudo apt-get -y install apache2

Etkinleştir mod_proxy.

sudo a2enmod proxy
sudo a2enmod proxy_http

Yeni bir sanal ana bilgisayar oluşturun.

sudo nano /etc/apache2/sites-available/sonar.yourdomain.com.conf

Dosyayı şununla doldur:

<VirtualHost *:80>  
    ServerName sonar.yourdomain.com
    ServerAdmin [email protected]
    ProxyPreserveHost On
    ProxyPass / http://localhost:9000/
    ProxyPassReverse / http://localhost:9000/
    TransferLog /var/log/apache2/sonar.yourdomain.com_access.log
    ErrorLog /var/log/apache2/sonar.yourdomain.com_error.log
</VirtualHost>

Sanal ana bilgisayarı etkinleştirin.

sudo a2ensite sonar.yourdomain.com.conf

Apache'yi başlatın ve önyükleme zamanında otomatik olarak başlamasını sağlayın:

sudo systemctl start apache2
sudo systemctl enable apache2

Sunucunuz zaten çalışıyorsa aşağıdakileri kullanarak yeniden başlatın:

sudo systemctl restart apache2

6. Adım: Kurulumu bitirin

SonarQube hizmetini başlatın:

sudo systemctl start sonar

SonarQube sunucunuza kurulur, gösterge tablosuna aşağıdaki adresten erişin.

http://sonar.yourdomain.com

İlk yönetici hesabını kullanarak giriş yapın adminve admin. Artık SonarQube'u yazdığınız kodu sürekli olarak analiz etmek için kullanabilirsiniz.



Leave a Comment

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.

Hala Teslim Edilmeyen Teknoloji Sözleri

Hala Teslim Edilmeyen Teknoloji Sözleri

Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun