<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>SonarQube Ubuntu Server 18.04 - GoBlog</title>
	<atom:link href="https://blog.goreinnamah.com/blog/tag/sonarqube-ubuntu-server-18-04/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.goreinnamah.com</link>
	<description>LOG ALL LOGS</description>
	<lastBuildDate>Sun, 09 Aug 2020 05:26:15 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://blog.goreinnamah.com/wp-content/uploads/2017/01/cropped-1-150x150.jpg</url>
	<title>SonarQube Ubuntu Server 18.04 - GoBlog</title>
	<link>https://blog.goreinnamah.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Instalasi SonarQube di Ubuntu Server 18.04</title>
		<link>https://blog.goreinnamah.com/blog/2020/08/09/instalasi-sonarqube-di-ubuntu-server-18-04/</link>
		
		<dc:creator><![CDATA[Darius Go Reinnamah]]></dc:creator>
		<pubDate>Sun, 09 Aug 2020 05:26:15 +0000</pubDate>
				<category><![CDATA[Information Technology]]></category>
		<category><![CDATA[Aplikasi SonarQube]]></category>
		<category><![CDATA[instalasi SonarQube]]></category>
		<category><![CDATA[SonarQube]]></category>
		<category><![CDATA[SonarQube Ubuntu Server 18.04]]></category>
		<guid isPermaLink="false">https://blog.goreinnamah.com/?p=4883</guid>

					<description><![CDATA[<p>SonarQube merupakan sebuah tool open source berbasis Java yang akan membantu kalian dalam menganalisis kualitas kodingan dan juga membuat laporan atas hasil[...]</p>
<p>The post <a href="https://blog.goreinnamah.com/blog/2020/08/09/instalasi-sonarqube-di-ubuntu-server-18-04/">Instalasi SonarQube di Ubuntu Server 18.04</a> first appeared on <a href="https://blog.goreinnamah.com">GoBlog</a>.</p>]]></description>
										<content:encoded><![CDATA[<p style="text-align: justify;">SonarQube merupakan sebuah <em>tool open source</em> berbasis <a href="https://id.wikipedia.org/wiki/Java">Java</a> yang akan membantu kalian dalam menganalisis kualitas kodingan dan juga membuat laporan atas hasil analisis tersebut. Aplikasi ini akan memindai kodingan kalian untuk mencari potensi bug dari kodingan tersebut, kerentanan, dan masalah pemeliharaan.</p>
<ul>
<li><strong><em>Baca Juga: <a href="https://blog.goreinnamah.com/blog/2020/08/03/instalasi-jenkins-di-centos-7-server/">Instalasi Jenkins di atas CentoS Server 7</a></em></strong></li>
</ul>
<p style="text-align: justify;">Setelah hasil dari pemindaian tersebut didapat, SonarQube akan memberikan info tersebut dalam bentuk sebuah laporan yang memungkinkan kalian untuk mengidentifikasi masalah yang ada pada kodingan kalian.</p>
<p style="text-align: justify;">Untuk melakukan instalasi SonarQube di Ubuntu Server 18.04, yang perlu kalian lakukan:</p>
<h3 style="text-align: justify;"><strong>Persyaratan</strong></h3>
<p style="text-align: justify;"><strong><em>Hardware</em></strong></p>
<ul style="text-align: justify;">
<li><em>Server </em>dengan RAM minimal 2GB</li>
</ul>
<p style="text-align: justify;"><em><strong>Software</strong></em></p>
<ul style="text-align: justify;">
<li>Java (<em>OpenJDK 11)</em></li>
<li>PostgreSQL 10 atau 9.3-9.6</li>
</ul>
<h3 style="text-align: justify;"><strong>1 &#8211; Lakukan System Update</strong></h3>
<p style="text-align: justify;">Sebelum melakukan instalasi paket yang mendukung, lebih baik jika kalian meng-<em>update </em>sistem kalian. Masuk ke dalam server kalian sebagai <em>sudo user </em>dan jalankan perintah:</p>
<pre><span style="color: #ff0000;"><strong>sudo apt update</strong></span>
<span style="color: #ff0000;"><strong>sudo apt dist-upgrade</strong></span></pre>
<h3 style="text-align: justify;">2 &#8211; Instalasi OpenJDK 11</h3>
<p style="text-align: justify;">Untuk melakukan instalasi OpenJDK 11, jalankan perintah:</p>
<pre><span style="color: #ff0000;"><strong>sudo apt install default-jdk</strong></span></pre>
<figure id="attachment_4908" aria-describedby="caption-attachment-4908" style="width: 1920px" class="wp-caption aligncenter"><img fetchpriority="high" decoding="async" class="size-full wp-image-4908" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/20-java.jpg" alt="" width="1920" height="423" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/20-java.jpg 1920w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/20-java-300x66.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/20-java-1024x226.jpg 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/20-java-768x169.jpg 768w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/20-java-1536x338.jpg 1536w" sizes="(max-width: 1920px) 100vw, 1920px" /><figcaption id="caption-attachment-4908" class="wp-caption-text">Instalasi OpenJDK 11</figcaption></figure>
<h3 style="text-align: justify;"><strong>3 &#8211; Instalasi dan konfigurasi PostgreSQL</strong></h3>
<p style="text-align: justify;">Instalasi repositori PostgreSQL:</p>
<pre><span style="color: #ff0000;"><strong>sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" &gt;&gt; /etc/apt/sources.list.d/pgdg.list'</strong></span>

<span style="color: #ff0000;"><strong>wget -q https://www.postgresql.org/media/keys/ACCC4CF8.asc -O - | sudo apt-key add -</strong></span></pre>
<figure id="attachment_4886" aria-describedby="caption-attachment-4886" style="width: 1746px" class="wp-caption aligncenter"><img decoding="async" class="size-full wp-image-4886" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/2-Postgre.png" alt="" width="1746" height="112" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/2-Postgre.png 1746w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/2-Postgre-300x19.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/2-Postgre-1024x66.png 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/2-Postgre-768x49.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/2-Postgre-1536x99.png 1536w" sizes="(max-width: 1746px) 100vw, 1746px" /><figcaption id="caption-attachment-4886" class="wp-caption-text">repositori PostgreSQL</figcaption></figure>
<p style="text-align: justify;">Instalasi database PostgreSQL dengan menjalankan perintah:</p>
<pre><span style="color: #ff0000;"><strong>sudo apt-get -y install postgresql postgresql-contrib</strong></span></pre>
<figure id="attachment_4887" aria-describedby="caption-attachment-4887" style="width: 1491px" class="wp-caption aligncenter"><img decoding="async" class="size-full wp-image-4887" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/3-Install-Postgre.png" alt="" width="1491" height="344" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/3-Install-Postgre.png 1491w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/3-Install-Postgre-300x69.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/3-Install-Postgre-1024x236.png 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/3-Install-Postgre-768x177.png 768w" sizes="(max-width: 1491px) 100vw, 1491px" /><figcaption id="caption-attachment-4887" class="wp-caption-text">Instalasi Database PostgreSQL</figcaption></figure>
<p style="text-align: justify;">Jalankan PostgreSQL server dan buat <em>service-</em>nya berjalan secara otomatis saat <em>booting </em>dengan menjalankan:</p>
<pre><span style="color: #ff0000;"><strong>sudo systemctl start postgresql</strong></span>
<span style="color: #ff0000;"><strong>sudo systemctl enable postgresql</strong></span></pre>
<figure id="attachment_4888" aria-describedby="caption-attachment-4888" style="width: 1290px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4888" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/4-start-Postgre.png" alt="" width="1290" height="138" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/4-start-Postgre.png 1290w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/4-start-Postgre-300x32.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/4-start-Postgre-1024x110.png 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/4-start-Postgre-768x82.png 768w" sizes="auto, (max-width: 1290px) 100vw, 1290px" /><figcaption id="caption-attachment-4888" class="wp-caption-text">Menjalankan service PostgreSQL</figcaption></figure>
<p style="text-align: justify;"><em>Service </em>sudah berjalan, sekarang waktunya untuk mengganti <em>password default </em>dari PostgreSQL. Caranya:</p>
<pre><span style="color: #ff0000;"><strong>sudo passwd postgres</strong></span></pre>
<figure id="attachment_4891" aria-describedby="caption-attachment-4891" style="width: 460px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4891" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/5-password-postgre.png" alt="" width="460" height="138" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/5-password-postgre.png 460w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/5-password-postgre-300x90.png 300w" sizes="auto, (max-width: 460px) 100vw, 460px" /><figcaption id="caption-attachment-4891" class="wp-caption-text">Mengubah password PostgreSQL</figcaption></figure>
<p style="text-align: justify;">Sekarang masuk sebagai <em>user </em>postgres dengan perintah:</p>
<pre><span style="color: #ff0000;"><strong>su - postgres</strong></span></pre>
<p style="text-align: justify;">Buat <em>user </em>baru dengan mengetikkan:</p>
<pre><span style="color: #ff0000;"><strong>create user sonar</strong></span></pre>
<p style="text-align: justify;">Masuk ke <em>shell </em>PostgreSQL dengan perintah:</p>
<pre><span style="color: #ff0000;"><strong>psql</strong></span></pre>
<p style="text-align: justify;">Buatlah <em>password </em>baru untuk <em>user </em>yang baru saja dibuat. Perintahnya:</p>
<pre><span style="color: #ff0000;"><strong>alter user sonar with encrypted password '&lt;passwordnya&gt;';</strong></span></pre>
<figure id="attachment_4893" aria-describedby="caption-attachment-4893" style="width: 1158px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4893" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/6-Create-user-sonar.jpg" alt="" width="1158" height="446" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/6-Create-user-sonar.jpg 1158w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/6-Create-user-sonar-300x116.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/6-Create-user-sonar-1024x394.jpg 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/6-Create-user-sonar-768x296.jpg 768w" sizes="auto, (max-width: 1158px) 100vw, 1158px" /><figcaption id="caption-attachment-4893" class="wp-caption-text">Buat user sonar dan menentukan passwordnya</figcaption></figure>
<p style="text-align: justify;">Buat <em>database</em> baru dan <em>assign user </em>yang baru dibuat ke <em>database </em>tersebut dengan perintah:</p>
<pre><strong><span style="color: #ff0000;">create database sonar owner sonar;</span></strong></pre>
<p style="text-align: justify;">Keluar dari <em>shell </em>psql dan kembali ke <em>sudo user </em>dengan perintah</p>
<pre><span style="color: #ff0000;"><strong>\q</strong></span>
<span style="color: #ff0000;"><strong>exit</strong></span></pre>
<figure id="attachment_4895" aria-describedby="caption-attachment-4895" style="width: 834px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4895" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/7-Create-database-sonar.png" alt="" width="834" height="207" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/7-Create-database-sonar.png 834w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/7-Create-database-sonar-300x74.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/7-Create-database-sonar-768x191.png 768w" sizes="auto, (max-width: 834px) 100vw, 834px" /><figcaption id="caption-attachment-4895" class="wp-caption-text">Membuat database, keluar sheel dan kembali ke sudo user</figcaption></figure>
<h3 style="text-align: justify;"><strong>4 &#8211; Mengunduh dan Mengonfigurasi SonarQube</strong></h3>
<p style="text-align: justify;">Unduh file arsip Sonarqube dengan perintah:</p>
<pre><span style="color: #ff0000;"><strong>wget -c https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-8.4.1.35646.zip</strong></span></pre>
<figure id="attachment_4896" aria-describedby="caption-attachment-4896" style="width: 1918px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4896" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/18-unduh-sonarqube.png" alt="" width="1918" height="296" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/18-unduh-sonarqube.png 1918w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/18-unduh-sonarqube-300x46.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/18-unduh-sonarqube-1024x158.png 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/18-unduh-sonarqube-768x119.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/18-unduh-sonarqube-1536x237.png 1536w" sizes="auto, (max-width: 1918px) 100vw, 1918px" /><figcaption id="caption-attachment-4896" class="wp-caption-text">Mengunduh file SonarQube</figcaption></figure>
<p style="text-align: justify;">Untuk melihat versi paling terbaru dari SonarQube, kalian bisa melihat <strong><a href="https://www.sonarqube.org/downloads/">DI SINI</a></strong>.</p>
<p style="text-align: justify;"><em>Unzip </em>file tersebut dengan menjalankan perintah:</p>
<pre><span style="color: #ff0000;"><strong>sudo unzip</strong> <strong>sonarqube-8.4.1.35646.zip</strong></span></pre>
<figure id="attachment_4897" aria-describedby="caption-attachment-4897" style="width: 978px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4897" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/19-unzip.png" alt="" width="978" height="996" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/19-unzip.png 978w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/19-unzip-295x300.png 295w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/19-unzip-768x782.png 768w" sizes="auto, (max-width: 978px) 100vw, 978px" /><figcaption id="caption-attachment-4897" class="wp-caption-text">proses unzipping</figcaption></figure>
<p style="text-align: justify;">Jika sudah selesai, ubah nama direktori hasil <em>unzip </em>tersebut agar lebih mudah. Caranya:</p>
<pre><span style="color: #ff0000;"><strong>mv sonarqube-8.4.1.35646 sonarqube</strong></span></pre>
<figure id="attachment_4899" aria-describedby="caption-attachment-4899" style="width: 596px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4899" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/8-mv-sonarqube.png" alt="" width="596" height="58" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/8-mv-sonarqube.png 596w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/8-mv-sonarqube-300x29.png 300w" sizes="auto, (max-width: 596px) 100vw, 596px" /><figcaption id="caption-attachment-4899" class="wp-caption-text">mengubah nama direktori</figcaption></figure>
<p style="text-align: justify;">berikan <em>permission </em>kepada <em>user </em>untuk direktori <em>/opt/sonarqube:</em></p>
<pre><span style="color: #ff0000;"><strong>sudo chown -R user:user /opt/sonarqube</strong></span></pre>
<p style="text-align: justify;">Buka konfigurasi SonarQube menggunakan <em>editor </em>yang kalian suka:</p>
<pre><span style="color: #ff0000;"><strong>vi /opt/sonarqube/conf/sonar.properties</strong></span></pre>
<p style="text-align: justify;">dan temukan bagian:</p>
<pre><strong><span style="color: #ff0000;">#sonar.jdbc.username=</span></strong>
<strong><span style="color: #ff0000;">#sonar.jdbc.password=</span></strong></pre>
<p style="text-align: justify;">hapus tanda &#8216;pagar&#8217; (#) dan masukkan <em>username </em>dan <em>password </em>yang sudah kalian buat sebelumnya. Tampilannya kini menjadi:</p>
<pre><strong><span style="color: #ff0000;">sonar.jdbc.username=<span style="color: #000000;">sonar</span></span></strong>
<strong><span style="color: #ff0000;">sonar.jdbc.password=<span style="color: #000000;">&lt;passwordnya&gt;</span></span></strong></pre>
<p style="text-align: justify;">Berikutnya temukan koneksi PostgreSQL-nya:</p>
<pre><span style="color: #ff0000;"><strong>#sonar.jdbc.url=jdbc:postgresql://localhost/sonar</strong></span></pre>
<p style="text-align: justify;">dan ubah menjadi:</p>
<pre><span style="color: #ff0000;"><strong>sonar.jdbc.url=jdbc:postgresql://localhost/sonar</strong></span></pre>
<figure id="attachment_4901" aria-describedby="caption-attachment-4901" style="width: 990px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4901" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/9-username-password-db-sonarqube.jpg" alt="" width="990" height="650" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/9-username-password-db-sonarqube.jpg 990w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/9-username-password-db-sonarqube-300x197.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/9-username-password-db-sonarqube-768x504.jpg 768w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/9-username-password-db-sonarqube-120x80.jpg 120w" sizes="auto, (max-width: 990px) 100vw, 990px" /><figcaption id="caption-attachment-4901" class="wp-caption-text">Isi username, password dan koneksi DBnya</figcaption></figure>
<p style="text-align: justify;">Simpan konfigurasi tersebut jika sudah selesai. Dan yang terakhir, jalankan SonarQube dalam mode <em>server:</em></p>
<pre><strong><span style="color: #ff0000;">sonar.web.javaAdditionalOpts=</span>-server</strong></pre>
<figure id="attachment_4902" aria-describedby="caption-attachment-4902" style="width: 1022px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4902" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/10-server-mode.png" alt="" width="1022" height="72" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/10-server-mode.png 1022w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/10-server-mode-300x21.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/10-server-mode-768x54.png 768w" sizes="auto, (max-width: 1022px) 100vw, 1022px" /><figcaption id="caption-attachment-4902" class="wp-caption-text">server mode</figcaption></figure>
<h3 style="text-align: justify;"><strong>5 &#8211; Mengonfigurasi Service Systemd</strong></h3>
<p style="text-align: justify;">SonarQubda dapat dijalankan dengan secara langsung menggunakan <em>startup script </em>yang disediakan dalam paket <em>installer</em>-nya. Namun untuk alasan kenyamanan, kalian harus mengatur sendiri <em>systemd </em>untuk aplikasi ini. Caranya buat sebuah file dengan nama <em>sonar.service</em>:</p>
<pre><span style="color: #ff0000;"><strong>vi /etc/systemd/system/sonar.service</strong></span></pre>
<p style="text-align: justify;">Isi file tersebut dengan:</p>
<pre><span style="color: #ff0000;"><strong>[Unit] </strong></span>
<span style="color: #ff0000;"><strong>Description=SonarQube service </strong></span>
<span style="color: #ff0000;"><strong>After=syslog.target network.target </strong></span>

<span style="color: #ff0000;"><strong>[Service] </strong></span>
<span style="color: #ff0000;"><strong>Type=forking </strong></span>
<span style="color: #ff0000;"><strong>ExecStart=/opt/sonarqube/bin/linux-x86-64/sonar.sh start </strong></span>
<span style="color: #ff0000;"><strong>ExecStop=/opt/sonarqube/bin/linux-x86-64/sonar.sh stop </strong></span>
<span style="color: #ff0000;"><strong>User=administrator </strong></span>
<span style="color: #ff0000;"><strong>Group=administrator </strong></span>
<span style="color: #ff0000;"><strong>Restart=always </strong></span>

<span style="color: #ff0000;"><strong>[Install] </strong></span>
<span style="color: #ff0000;"><strong>WantedBy=multi-user.target</strong></span></pre>
<figure id="attachment_4904" aria-describedby="caption-attachment-4904" style="width: 891px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4904" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/11-systemd.jpg" alt="" width="891" height="562" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/11-systemd.jpg 891w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/11-systemd-300x189.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/11-systemd-768x484.jpg 768w" sizes="auto, (max-width: 891px) 100vw, 891px" /><figcaption id="caption-attachment-4904" class="wp-caption-text">isi dari file sonar.service</figcaption></figure>
<p style="text-align: justify;">Nyalakan <em>service-</em>nya dengan perintah:</p>
<pre><span style="color: #ff0000;"><strong>sudo systemctl start sonar</strong></span></pre>
<p style="text-align: justify;"><em>Enable </em><em>service-</em>nya secara otomatis saat <em>booting </em>dengan perintah:</p>
<pre><span style="color: #ff0000;"><strong>sudo systemctl enable sonar</strong></span></pre>
<figure id="attachment_4905" aria-describedby="caption-attachment-4905" style="width: 1330px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-4905" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/13-Enable-sonar.png" alt="" width="1330" height="58" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/13-Enable-sonar.png 1330w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/13-Enable-sonar-300x13.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/13-Enable-sonar-1024x45.png 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/13-Enable-sonar-768x33.png 768w" sizes="auto, (max-width: 1330px) 100vw, 1330px" /><figcaption id="caption-attachment-4905" class="wp-caption-text">enable it</figcaption></figure>
<p style="text-align: justify;">Untuk memeriksa <em>service-</em>nya, ketik perintah:</p>
<pre><span style="color: #ff0000;"><strong>sudo systemctl status sonar</strong></span></pre>
<figure id="attachment_4906" aria-describedby="caption-attachment-4906" style="width: 1980px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4906" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/12-Enable-sonar.png" alt="" width="1980" height="500" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/12-Enable-sonar.png 1980w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/12-Enable-sonar-300x76.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/12-Enable-sonar-1024x259.png 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/12-Enable-sonar-768x194.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/12-Enable-sonar-1536x388.png 1536w" sizes="auto, (max-width: 1980px) 100vw, 1980px" /><figcaption id="caption-attachment-4906" class="wp-caption-text">Jalankan service dan memeriksa statusnya</figcaption></figure>
<h3 style="text-align: justify;"><strong>6 &#8211; Mengatur Nginx</strong></h3>
<p style="text-align: justify;">Sekarang <em>server </em>SonarQube sudah berjalan, sekarang waktunya untuk mengonfigurasi Nginx. Lakukan instalasi Nginx dengan mengetikkan perintah:</p>
<pre><span style="color: #ff0000;"><strong>sudo apt install nginx</strong></span></pre>
<figure id="attachment_4910" aria-describedby="caption-attachment-4910" style="width: 1916px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4910" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/14-install-nginx.png" alt="" width="1916" height="416" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/14-install-nginx.png 1916w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/14-install-nginx-300x65.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/14-install-nginx-1024x222.png 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/14-install-nginx-768x167.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/14-install-nginx-1536x333.png 1536w" sizes="auto, (max-width: 1916px) 100vw, 1916px" /><figcaption id="caption-attachment-4910" class="wp-caption-text">instalasi Nginx</figcaption></figure>
<p style="text-align: justify;">Buat file konfigurasi Nginx dengan <em>editor </em>yang kalian suka. Ketikkan:</p>
<pre><span style="color: #ff0000;"><strong>sudo vi /etc/nginx/sites-enabled/sonarqube</strong></span></pre>
<p style="text-align: justify;">Isi dengan:</p>
<pre><strong><span style="color: #ff0000;">server{</span></strong>
<strong><span style="color: #ff0000;"><span class="Apple-converted-space">    </span>listen<span class="Apple-converted-space">      </span>9000;</span></strong>
<strong><span style="color: #ff0000;"><span class="Apple-converted-space">    </span>server_name sonarqube.developerinsider.co;</span></strong>
<strong><span style="color: #ff0000;"><span class="Apple-converted-space">    </span>access_log<span class="Apple-converted-space">  </span>/var/log/nginx/sonar.access.log;</span></strong>
<strong><span style="color: #ff0000;"><span class="Apple-converted-space">    </span>error_log <span class="Apple-converted-space">  </span>/var/log/nginx/sonar.error.log;</span></strong>
<strong><span style="color: #ff0000;"><span class="Apple-converted-space">    </span>proxy_buffers 16 64k;</span></strong>
<strong><span style="color: #ff0000;"><span class="Apple-converted-space">    </span>proxy_buffer_size 128k;</span></strong>

<strong><span style="color: #ff0000;"><span class="Apple-converted-space">    </span>location / {</span></strong>
<strong><span style="color: #ff0000;"><span class="Apple-converted-space">        </span>proxy_pass<span class="Apple-converted-space">  </span>http://127.0.0.1:9000;</span></strong>
<strong><span style="color: #ff0000;"><span class="Apple-converted-space">        </span>proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;</span></strong>
<strong><span style="color: #ff0000;"><span class="Apple-converted-space">        </span>proxy_redirect off;</span></strong>
<strong><span style="color: #ff0000;"><span class="Apple-converted-space">        </span>proxy_set_header<span class="Apple-converted-space">    </span>Host<span class="Apple-converted-space">            </span>$host;</span></strong>
<strong><span style="color: #ff0000;"><span class="Apple-converted-space">        </span>proxy_set_header<span class="Apple-converted-space">    </span>X-Real-IP <span class="Apple-converted-space">      </span>$remote_addr;</span></strong>
<strong><span style="color: #ff0000;"><span class="Apple-converted-space">        </span>proxy_set_header<span class="Apple-converted-space">    </span>X-Forwarded-For $proxy_add_x_forwarded_for;</span></strong>
<strong><span style="color: #ff0000;"><span class="Apple-converted-space">        </span>proxy_set_header<span class="Apple-converted-space">    </span>X-Forwarded-Proto http;</span></strong>
<strong><span style="color: #ff0000;"><span class="Apple-converted-space">    </span>}</span></strong>
<strong><span style="color: #ff0000;">}</span></strong></pre>
<figure id="attachment_4912" aria-describedby="caption-attachment-4912" style="width: 1464px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4912" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/21-konfigurasi-nginx.jpg" alt="" width="1464" height="749" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/21-konfigurasi-nginx.jpg 1464w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/21-konfigurasi-nginx-300x153.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/21-konfigurasi-nginx-1024x524.jpg 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/21-konfigurasi-nginx-768x393.jpg 768w" sizes="auto, (max-width: 1464px) 100vw, 1464px" /><figcaption id="caption-attachment-4912" class="wp-caption-text">konfigurasi nginx</figcaption></figure>
<p style="text-align: justify;">Simpan file tersebut dan kemudian keluar. Pastikan konfigurasinya tidak memiliki <em>syntax </em>yang <em>error </em>dengan menjalankan perintah:</p>
<pre><span style="color: #ff0000;"><strong>sudo nginx -t</strong></span></pre>
<figure id="attachment_4913" aria-describedby="caption-attachment-4913" style="width: 1152px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4913" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/22-nginx-t.jpg" alt="" width="1152" height="548" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/22-nginx-t.jpg 1152w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/22-nginx-t-300x143.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/22-nginx-t-1024x487.jpg 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/22-nginx-t-768x365.jpg 768w" sizes="auto, (max-width: 1152px) 100vw, 1152px" /><figcaption id="caption-attachment-4913" class="wp-caption-text">pemeriksaan syntax</figcaption></figure>
<p style="text-align: justify;">Jika kalian melihat ada <em>error, </em>segera perbaikai <em>error </em>tersebut dan kembali jalankan perintah <em>nginx -t. </em>Jika <em>error </em>sudah tidak ada, <em>restart service nginx </em>dengan perintah:</p>
<pre><span style="color: #ff0000;"><strong>sudo service nginx restart</strong></span></pre>
<figure id="attachment_4914" aria-describedby="caption-attachment-4914" style="width: 1642px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4914" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/16-Restart-Nginx.png" alt="" width="1642" height="658" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/16-Restart-Nginx.png 1642w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/16-Restart-Nginx-300x120.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/16-Restart-Nginx-1024x410.png 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/16-Restart-Nginx-768x308.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/16-Restart-Nginx-1536x616.png 1536w" sizes="auto, (max-width: 1642px) 100vw, 1642px" /><figcaption id="caption-attachment-4914" class="wp-caption-text">restart nginx</figcaption></figure>
<h3 style="text-align: justify;"><strong>7 &#8211; Pengaturan SonarQube</strong></h3>
<p style="text-align: justify;">Untuk mengatur proses finalisasi dari SonarQube, masuk ke browser dan akses nama domain atau IP dari <em>server </em>kalian.</p>
<pre><span style="color: #ff0000;"><strong>http://&lt;nama_domain atau IP&gt;</strong></span></pre>
<p style="text-align: justify;">Jika sudah melakukan proses finalisasi, kalian akan melihat tampilan seperti ini:</p>
<figure id="attachment_4915" aria-describedby="caption-attachment-4915" style="width: 2776px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-4915" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/Screen-Shot-2020-07-24-at-16.26.18.png" alt="" width="2776" height="544" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/Screen-Shot-2020-07-24-at-16.26.18.png 2776w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/Screen-Shot-2020-07-24-at-16.26.18-300x59.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/Screen-Shot-2020-07-24-at-16.26.18-1024x201.png 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/Screen-Shot-2020-07-24-at-16.26.18-768x151.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/Screen-Shot-2020-07-24-at-16.26.18-1536x301.png 1536w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/Screen-Shot-2020-07-24-at-16.26.18-2048x401.png 2048w" sizes="auto, (max-width: 2776px) 100vw, 2776px" /><figcaption id="caption-attachment-4915" class="wp-caption-text">Halaman depan</figcaption></figure>
<figure id="attachment_4916" aria-describedby="caption-attachment-4916" style="width: 742px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4916" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/Screen-Shot-2020-07-24-at-16.26.41.png" alt="" width="742" height="456" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/Screen-Shot-2020-07-24-at-16.26.41.png 742w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/Screen-Shot-2020-07-24-at-16.26.41-300x184.png 300w" sizes="auto, (max-width: 742px) 100vw, 742px" /><figcaption id="caption-attachment-4916" class="wp-caption-text">Halaman Login</figcaption></figure>
<h3 style="text-align: justify;"><strong>Tambahan</strong></h3>
<p style="text-align: justify;">Untuk memantau proses dari SonarQube, ada beberapa file log yang bisa kalian periksa:</p>
<ul style="text-align: justify;">
<li>Service Logs
<pre><strong><span style="color: #ff0000;">tail -100f /opt/sonarqube/logs/sonar.log</span></strong></pre>
</li>
<li>Web Server Logs
<pre><span style="color: #ff0000;"><strong>tail -100f /opt/sonarqube/logs/web.log</strong></span></pre>
</li>
<li>ElasticSearch Logs
<pre><span style="color: #ff0000;"><strong>tail -100f /opt/sonarqube/logs/es.log</strong></span></pre>
</li>
<li>Compute Engine Logs
<pre><span style="color: #ff0000;"><strong>tail -100f /opt/sonarqube/logs/ce.log</strong></span></pre>
</li>
</ul>
<h3 style="text-align: justify;"><strong>Beberapa Pesan Error</strong></h3>
<p style="text-align: justify;">Seperti yang sudah saya jelaskan tadi. Bila aplikasinya tidak berjalan, silakan kalian melihat log yang ada.</p>
<figure id="attachment_4918" aria-describedby="caption-attachment-4918" style="width: 1718px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4918" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/error-1.png" alt="" width="1718" height="548" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/error-1.png 1718w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/error-1-300x96.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/error-1-1024x327.png 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/error-1-768x245.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/error-1-1536x490.png 1536w" sizes="auto, (max-width: 1718px) 100vw, 1718px" /><figcaption id="caption-attachment-4918" class="wp-caption-text">service tidak berjalan dengan baik</figcaption></figure>
<p style="text-align: justify;">Berikut ini beberapa pesan <em>error </em>yang pernah saya dapatkan ketika menjalankan SonarQube:</p>
<ol style="text-align: justify;">
<li><strong>Dijalankan dengan </strong><em><em><strong>user root</strong><br />
</em></em></p>
<figure id="attachment_4919" aria-describedby="caption-attachment-4919" style="width: 1578px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-4919" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/23-running-as-root.png" alt="" width="1578" height="394" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/23-running-as-root.png 1578w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/23-running-as-root-300x75.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/23-running-as-root-1024x256.png 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/23-running-as-root-768x192.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/23-running-as-root-1536x384.png 1536w" sizes="auto, (max-width: 1578px) 100vw, 1578px" /><figcaption id="caption-attachment-4919" class="wp-caption-text">Dijalankan dengan user root</figcaption></figure>
<p>Bila kalian melihat <em>error </em>seperti di atas, kalian harus membuat <em>user </em>untuk menjalankan SonarQube, memasukkan <em>user </em>tersebut ke dalam file <em>sonar.service </em>dan mengubah <em>user:group</em> foldernya dengan <em>user:group </em>yang baru saja kalian buat</li>
<li> <strong>Tidak menggunakan Java 11</strong>
<figure id="attachment_4920" aria-describedby="caption-attachment-4920" style="width: 1554px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-4920" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/24-Java-11.png" alt="" width="1554" height="494" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/24-Java-11.png 1554w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/24-Java-11-300x95.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/24-Java-11-1024x326.png 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/24-Java-11-768x244.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/24-Java-11-1536x488.png 1536w" sizes="auto, (max-width: 1554px) 100vw, 1554px" /><figcaption id="caption-attachment-4920" class="wp-caption-text">Tidak menggunakan Java 11</figcaption></figure>
<p>Bila kalian melihat <em>error </em>seperti gambar di atas, yang perlu kalian lakukan adalah melakukan instalasi OpenJDK 11 dan menjadikannya <em>default. </em>Cara untuk melakukan instalasi OpenJDK 11 sudah saya berikan di awal tulisan.</li>
<li><strong>Permission</strong>
<figure id="attachment_4922" aria-describedby="caption-attachment-4922" style="width: 1268px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-4922" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/25-Permission.png" alt="" width="1268" height="262" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/25-Permission.png 1268w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/25-Permission-300x62.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/25-Permission-1024x212.png 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/25-Permission-768x159.png 768w" sizes="auto, (max-width: 1268px) 100vw, 1268px" /><figcaption id="caption-attachment-4922" class="wp-caption-text">wrong permission</figcaption></figure>
<p>Bila kalian melihat pesan <em>error </em>seperti gambar di atas, itu tandanya ada <em>permission </em>yang salah pada <em>file</em> atau <em>folder </em>yang disebutkan dalam log. Segera ubah <em>permissionnya.</em></li>
<li><strong>System Settings</strong>
<figure id="attachment_4923" aria-describedby="caption-attachment-4923" style="width: 1250px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-4923" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/26-memory.png" alt="" width="1250" height="158" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/26-memory.png 1250w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/26-memory-300x38.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/26-memory-1024x129.png 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/26-memory-768x97.png 768w" sizes="auto, (max-width: 1250px) 100vw, 1250px" /><figcaption id="caption-attachment-4923" class="wp-caption-text">System settings</figcaption></figure>
<p>Jika kalian melihat pesan <em>error </em>di atas, maka ada beberapa parameter yang harus kalian ubah pada file <em>sysctl.conf. </em>Untuk menjalankan SonarQube, nilai <em>vm.max_map_count </em>&gt;=262144 dan nilai <em>fs.file-max</em><em> &gt;=65536.</em></p>
<p>Ubah nilai tersebut pada file <em>/etc/sysctl.conf </em>menggunakan <em>editor </em>yang kalian suka:</p>
<pre><span style="color: #ff0000;"><strong>vi /etc/sysctl.conf</strong></span></pre>
<p>Tambahkan:</p>
<pre><span style="color: #ff0000;"><strong>vm.max_map_count=262144
fs.file-max=65536
</strong></span></pre>
<p>dan kemudian jalankan:</p>
<pre><span style="color: #ff0000;"><strong>sysctl -p</strong></span></pre>
<p><figure id="attachment_4924" aria-describedby="caption-attachment-4924" style="width: 814px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-4924" src="https://blog.goreinnamah.com/wp-content/uploads/2020/08/27-fixing.png" alt="" width="814" height="104" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/08/27-fixing.png 814w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/27-fixing-300x38.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/08/27-fixing-768x98.png 768w" sizes="auto, (max-width: 814px) 100vw, 814px" /><figcaption id="caption-attachment-4924" class="wp-caption-text">fixing</figcaption></figure></li>
</ol>
<p style="text-align: center;"><strong>*****</strong></p>
<p style="text-align: justify;">Itu tadi cara melakukan isntalasi SonarQube pada Ubuntu Server 18.04. Untuk cara penggunaannya, akan saya coba buat dalam postingan terpisah. Sampai jumpa di tutorial selanjutnya. Semoga informasi ini bisa berguna ya <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p><p>The post <a href="https://blog.goreinnamah.com/blog/2020/08/09/instalasi-sonarqube-di-ubuntu-server-18-04/">Instalasi SonarQube di Ubuntu Server 18.04</a> first appeared on <a href="https://blog.goreinnamah.com">GoBlog</a>.</p>]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/?utm_source=w3tc&utm_medium=footer_comment&utm_campaign=free_plugin

Object Caching 0/188 objects using Memcached
Page Caching using Disk: Enhanced 
Database Caching using Memcached (Request-wide modification query)

Served from: blog.goreinnamah.com @ 2026-10-07 08:54:12 by W3 Total Cache
-->