Halo teman teman. Dalam postingan ini, Anda akan mempelajari cara menginstal SonarQube di Debian 11.
Menurut dokumentasi resmi SonarQube
SonarQube adalah alat tinjauan kode otomatis untuk mendeteksi bug, kerentanan, dan bau kode dalam kode Anda. Ini dapat berintegrasi dengan alur kerja Anda yang ada untuk memungkinkan pemeriksaan kode berkelanjutan di seluruh cabang proyek Anda dan menarik permintaan.
Ini memungkinkan tim untuk menganalisis kode mereka dengan cepat dan meningkatkan kualitas produk. Ini memiliki banyak integrasi dan mendukung beberapa bahasa pemrograman.
Jadi, Anda bisa menebak mengapa banyak tim memilihnya untuk proyek mereka.
Ayo lakukan.
Instal paket yang diperlukan
Untuk posting ini, kami akan selalu menggunakan pengguna root. Sebelum kita mulai, kita harus memperbarui seluruh sistem.
Jadi, setelah Anda masuk ke server, jalankan
apt update
apt install unzip software-properties-common wget default-jdk
Ini akan menginstal Java dan paket dasar lainnya.
Menginstal PostgreSQL di Debian 11
Langkah selanjutnya adalah menginstal PostgreSQL di server. Ini karena SonarQube menggunakannya sebagai penyimpanan data.
Dengan versi yang kami miliki di repositori resmi, itu sudah cukup bagi kami.
apt install postgresql postgresql-contrib
Sekarang kita ubah ke postgres
pengguna untuk mengakses konsol PostgreSQL.
su - postgres
psql
Sekarang buat pengguna baru bernama sonarqube
dengan kata sandi yang kuat dan tidak seperti yang saya miliki
CREATE USER sonarqube WITH PASSWORD 'pss';
Sekarang buat database untuk SonarQube milik pengguna.
CREATE DATABASE sonarqube OWNER sonarqube;
Tetapkan izin pada database.
GRANT ALL PRIVILEGES ON DATABASE sonarqube TO sonarqube;
Dan keluar dari konsol
\q
exit
Unduh SonarQube di Debian 11
Saat kami bekerja dengan pengguna root, kami harus membuat folder tempat menyimpan unduhan. Misalnya:
mkdir -p /downloads/sonarqube
Di dalamnya, unduh versi terbaru yang tersedia.
cd /downloads/sonarqube
wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-9.2.2.50622.zip
Sekarang unzip file
unzip sonarqube-9.2.2.50622.zip
Dan folder yang dihasilkan, Anda harus memindahkannya ke lokasi lain seperti /opt
.
mv sonarqube-9.2.2.50622 /opt/sonarqube
Sekarang buat pengguna sistem baru yang didedikasikan untuk SonarQube
adduser --system --no-create-home --group --disabled-login sonarqube
Jadikan pengguna ini sebagai pemilik folder
chown -R sonarqube:sonarqube /opt/sonarqube
Konfigurasikan SonarQube sebelum menggunakannya
Dalam skrip inisialisasi aplikasi, kita harus menentukan siapa yang akan menjalankan SonarQube. Jadi buka file tersebut.
nano /opt/sonarqube/bin/linux-x86-64/sonar.sh
Dan temukan garisnya
#RUN_AS_USER
Dan ubah menjadi ini
RUN_AS_USER=sonarqube
Simpan perubahan dan tutup editor.
Selanjutnya, kita harus mengedit file konfigurasi lain.
nano /opt/sonarqube/conf/sonar.properties
Di akhir file, Anda harus menambahkan yang berikut
sonar.jdbc.username=sonarqube
sonar.jdbc.password=pss
sonar.jdbc.url=jdbc:postgresql://localhost/sonarqube
sonar.web.javaAdditionalOpts=-server
sonar.web.host=0.0.0.0
Simpan perubahan dan tutup editor.
Kita juga harus melakukan beberapa penyesuaian pada kernel.
nano /etc/sysctl.conf
Dalam file ini, Anda harus menambahkan baris berikut
vm.max_map_count=262144
fs.file-max=65536
Untuk menerapkan perubahan, Anda dapat mem-boot ulang sistem.
reboot
Masuk ke antarmuka web SonarQube
Saat mem-boot ulang, Anda dapat mulai menjalankan SonarQube lagi.
/opt/sonarqube/bin/linux-x86-64/sonar.sh start
Kemudian, buka browser web dan buka domain Anda dan tambahkan port 9000
yang harus tersedia di firewall Anda. Misalnya, http://your-server:9000
dan Anda akan melihat yang berikut ini setelah beberapa saat.
Sekarang, Anda dapat masuk dengan nama pengguna admin dan sandi admin .
Untuk alasan keamanan, Anda harus segera mengubah kata sandi.
Kemudian, Anda akan melihat layar utama, dan dapat mulai bekerja dengannya.
Selamat menikmati
Kesimpulan
Dalam posting ini, Anda mempelajari cara menginstal SonarQube di Debian 11 dan dengan demikian memiliki alat penting untuk men-debug kode aplikasi Anda.