# **SonarQube 安裝**
## **1. 安裝 OpenJDK**
```bash=
$sudo curl -O https://download.java.net/java/GA/jdk11/9/GPL/openjdk-11.0.2_linux-x64_bin.tar.gz
$sudo tar zxvf openjdk-11.0.2_linux-x64_bin.tar.gz
$sudo mv jdk-11.0.2/ /usr/local/
$sudo vi ~/.bash_profile
```
```
export JAVA_HOME=/usr/local/jdk-11.0.2
export PATH=$PATH:$JAVA_HOME/bin
```
## **2. 設置 Postgresql**
> 安裝 Postgresql 套件
```bash=
$sudo yum install postgresql-server postgresql-contrib -y
$sudo postgresql-setup initdb
$sudo systemctl start postgresql
$sudo systemctl enable postgresql
$sudo vi /var/lib/pgsql/data/pg_hba.conf
```
```
host all all 0.0.0.0/0 md5
```
```bash=
$sudo vi /var/lib/pgsql/data/postgresql.conf
```
```
listen_addresses = '*'
```
> 調整 DB 配置檔**
```bash=
$su – postgres
$psql postgres
```
```
Postgres=#create user sonar with password 'ewill1qaz@WSX’;
Postgres=#create database sonar with owner sonar encoding ‘UTF8’;
```
## **3. 設置 Sonarqube**
> 安裝 Sonarqube 套件
```bash=
#Unpack sonarqube
$sudo wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-9.2.4.50792.zip
$sudo wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-9.1.0.47736.zip
$sudo unip –d /opt sonarqube-9.1.0.47736.zip
$sudo cd /opt
$sudo mv /sonarqube-9.1.0.47736 /sonar
#Create snoar user & assign permision
$sudo useradd sonar
$sudo passwd sonar
$sudo chown –R sonar:sonar /opt/sonar
```
> 調整 sonarqube 配置檔
```bash=
$sudo vi /opt/sonar/conf/sonar.properties
```
```
sonar.jdbc.username=sonar
sonar.jdbc.password=1qaz@WSX
sonar.jdbc.url=jdbc:postgresql://192.168.0.128:5432/sonar?currentSchema=public
```
> 修改參數
```bash=
$sudo vi /etc/sysctl.conf
```
```
vm.max_map_count = 262144
```
```bash=
$sudo sysctl -p
```
> 啟動 sonar daemon
```bash=
$su - sonar
$/opt/sonar/bin/linux-x86-64/sonar.sh start
```
## **4. 第一次登入 sonarqube 管理介面**
:::success
以瀏覽器鍵入 http://your_ip_address:9000
:::
###### tags: `Security` `自動化佈署` `CICD` `Micro-service`