Docker部署 SonarQube, PHPStorm使用SonarLint插件进行代码检查
docker-compose 部署 SonarQube Server
docker-compose.yml
version: "3"
services:
sonarqube:
image: sonarqube:lts-community
depends_on:
- db
environment:
SONAR_JDBC_URL: jdbc:postgresql://db:5432/sonar
SONAR_JDBC_USERNAME: sonar
SONAR_JDBC_PASSWORD: sonar
SONAR_ES_BOOTSTRAP_CHECKS_DISABLE: true
volumes:
- sonarqube_data:/opt/sonarqube/data
- sonarqube_extensions:/opt/sonarqube/extensions
- sonarqube_logs:/opt/sonarqube/logs
ports:
- "9000:9000"
db:
image: postgres:12
environment:
POSTGRES_USER: sonar
POSTGRES_PASSWORD: sonar
volumes:
- postgresql:/var/lib/postgresql
- postgresql_data:/var/lib/postgresql/data
volumes:
sonarqube_data:
sonarqube_extensions:
sonarqube_logs:
postgresql:
postgresql_data:
启动:
docker-compose up -d
访问http://localhost:9000
,用户名admin
,密码admin
登录管理后台。
创建项目:
选择Locally
用本地项目测试
点击Generate
点击Continue
选择项目类型
copy 命令 sonar-scanner.bat -D"sonar.projectKey=test" -D"sonar.sources=." -D"sonar.host.url=http://localhost:9000" -D"sonar.login=xxx"
根据提示下载 sonarscanner 到本地,windows下解压缩到任意目录,并将bin
目录添加到PATH
环境变量
切换到项目目录执行上一步中的命令:
sonar-scanner.bat -D"sonar.projectKey=test" -D"sonar.sources=." -D"sonar.host.url=http://localhost:9000" -D"sonar.login=xxx"
执行完毕,后台自动跳转,这样就完成了第一次项目代码的提交检查
也可以使用配置文件的方式来替换上述命令:
在项目根目录中创建配置文件sonar-project.properties
,内容如下:
# must be unique in a given SonarQube instance
sonar.projectKey=test
sonar.projectName=test
# Path is relative to the sonar-project.properties file. Defaults to .
sonar.sources=.
sonar.login=xxx
替换sonar.login
为你的token
,然后执行,
sonar-scanner.bat -D"project.settings=./sonar-project.properties"
SonarLint 配置
- 安装SonarLint插件
点击Add
选择本地部署的SonarQube服务
填写test
项目的token
,即sonar.login
的值
绑定项目
修改代码会自动提示代码缺陷
Last modified on 2022-10-20
Comments Disabled.