# SonarQube ###### tags: `SonarQube` `sonarqube` `學習紀錄` `自動檢測` ## 目標 ### 使用自動工具檢測專案 ## 使用 docker 檢測 ### 建立 server ```shell docker run -d \ --name sonarqube \ -e SONAR_ES_BOOTSTRAP_CHECKS_DISABLE=true \ -p 9000:9000 \ sonarqube:latest ``` * 建立後可在 http://localhost:9000 看到頁面 * 使用 帳號 : admin 密碼 : admin 登入 * 第一次登入會被要求改密碼 * 此指令無考慮持久化,需要保留資料請掛 Volume ### 取得參數 #### PROJECT_KEY & TOKEN *  *  *  *  *  ### 實行檢測 * [官網範例](https://docs.sonarqube.org/9.9/analyzing-source-code/scanners/sonarscanner/) * [error 處理](https://stackoverflow.com/questions/32097414/error-sonar-server-http-localhost9000-can-not-be-reached) * 在要檢測的專案根路徑下,執行下面的指令 ```shell docker run --network=host \ -e SONAR_HOST_URL="http://localhost:9000" \ -e SONAR_SCANNER_OPTS="-Dsonar.projectKey=<PROJEC_TKEY>" \ -e SONAR_LOGIN="<TOKEN>" \ --user="$(id -u):$(id -g)" \ -v "$PWD:/usr/src" \ sonarsource/sonar-scanner-cli ``` ### 實際執行範例 ### 下指令後 *  #### 結果 *  * 
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up