在docker中已经安装了jenkins,sonarqube服务器和数据库已经全部搭建好,只需要在jenkins中配置扫码工具,对项目代码进行扫描即可。
1. 下载SonarScanner | SonarQube Docs(此处用的Linux 64-bit,大概41MB)
2. 将下载好的zip文件包传到docker中并解压
docker cp /<local_dir>/sonar-scanner-cli-4.6.2.2472-linux.zip <docker_name>:/<docker_dir>/
解压 unzip sonar-scanner-cli-4.6.2.2472-linux.zip
3. 配置项目扫码的url:
可以配置这里的url,不配置可以在命令行中指定
$install_directory/conf/sonar-scanner.properties
:
#----- Default SonarQube server
#sonar.host.url=http://localhost:9000
4. 配置环境变量: $install_directory/bin到path中,
vim /etc/profile
最后用source /etc/profile 环境变量生效
5.将sonarqube的命令配置到jenkins获取git代码的后面,并cd到要扫码的目录下,就可以验证是否配置成功了
source /etc/profile
cd /project_dir/
sonar-scanner \
-Dsonar.projectKey=key\
-Dsonar.sources=. \
-Dsonar.host.url=http://localhost:9000 \
-Dsonar.exclusions=**/*.html,**/*.jsp, \
-Dsonar.login=token
需要修改规则和排除扫码目录的可以参考这篇文章,写的挺详细的: