menjalankan sonarqube dari docker - Untuk para developer dan QA, pasti sudah familiar dengan SonarQube, sebuah layanan untuk automatisasi review kode untuk pendeteksi bug, kerentanan, dan kode yang tidak bersih.
SonarQube telah rilis di docker hub yang berarti kita bisa memakai layanannya melalui container docker dengan mudah. Kita tidak perlu menginstall web server, database, atau java sdk di device kita. Semua sudah di-bundle jadi satu di images sonarqube di docker.
Oke, berikut ini adalah cara install dan menjalankannya.
A. Menjalankan SonarQube dari Docker
1. Pull Images
Seperti biasa, kita harus pull images sonarqube dan sonar scanner dari docker hub.
docker pull sonarqube:latest
docker pull sonarsource/sonar-scanner-cli:latest
2. Run Container
Kita buat container menggunakan image sonarqube yang sudah di-pull tadi. Disini saya expose port nya ke 9001 (defaultnya adalah 9000)
docker run --name sonarqube -p 9001:9000 sonarqube
3. Masuk ke aplikasi SonarQube di browser (http://localhost:9001)
B. Menjalankan Projek Lokal di SonarQube
1. Buat Projek Baru
Buat projek dan set up token di sonarqube. Disini saya sudah punya projek laravel bernama Travellist Demo. Lalu, saya menamai projek di sonarqube sama dengan projek laravel saya, Travellist Demo.
Jalankan image sonar-scanner-cli. Masuk ke root folder projek, lalu jalankan perintah ini.
docker run --rm -v "$(pwd):/usr/src" sonarsource/sonar-scanner-cli \
-D sonar.projectKey=(PROJECT KEY MU) \
-D sonar.host.url=http://172.17.0.2:9000 \
-D sonar.login=(TOKEN MU)
Catatan:
Host url http://172.17.0.2:9000/ adalah host dan default dari images sonarqube. Terkadang IP bisa saja berbeda. Untuk cek IP container, silahkan jalankan perintah berikut.
docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' sonarqube
3. Selesai
Jika berhasil, akan terbuat otomatis folder .sonarscanner di root folder project.
Dan di web SonarQube, kalian akan di-redirect otomatis.
Sekarang SonarQube sudah bisa digunakan di projek.
Oke itulah tadi cara menjalankan sonarqube untuk projek lokal melalui docker. Semoga bermanfaat! Terima kasih!
Tags
Docker