sonar7.8+pdf导出
docker部署pgsql
版本没关系,直接最新版就好了
docker pull postgres
启动pgsql,记录账号密码和端口号
docker run --name db -p 5432:5432 -e POSTGRES_USER=sonar -e POSTGRES_PASSWORD=sonar -d postgres
进入容器
docker exec -it db /bin/bash
用sonar账号进入postgres命令行
psql -U sonar
创建sonar数据库
create database sonar;
给sonar授权
alter role sonar createdb;alter role sonar superuser;alter role sonar createrole;
更改sonar数据库拥有者(这一步是必须的,否则会sonarqube会连接失败)
alter database sonar owner to sonar;
\q 退出postgres命令行
exit 退出容器进入linux命令行
拉取sonarqube7.8
博主项目是jdk8,一开始拉的9.9,启动不起来,所以查了一下支持jdk8的7.8
版本真的很重要
sonarqube:7.8-community 是 sonar 对 jdk8 的最后一个版本,从 7.9 以后 sonar 最低支持版本为 jdk11
docker pull sonarqube:7.8-community
启动sonar
注意连接里数据库账号和密码要写对
docker run --name sq -e sonar.jdbc.password=sonar -e sonar.jdbc.username=sonar -e sonar.jdbc.url=jdbc:postgresql://postgres/sonar --link db:postgres -p 9000:9000 -d sonarqube:7.8-community
docker ps简单看看启动成功没

验证
启动成功后登录ip:9000端口就可以访问了 默认账号密码:admin
如果没连上检查下自己云服务防火墙

查看日志命令
如果访问失败,或者用curl命令,提示Connection refused,,
可以查看sonar日志,定位报错,并进行修改。
docker logs -f -t --tail==100 容器ID
基本使用

java项目maven构建,扫描命令直接copy就好了,注意token

项目pom文件修改
必须: plugins页签新增
org.sonarsource.scanner.maven sonar-maven-plugin 3.4.0.905
可选(如果这里不写,就要在maven的settings.xml里写)
在project页签新增
sonar true 0377803a8169a007aaef22630bba96bd97994c88 http://localhost:9000 java

开始扫描,两个方式
1.命令行
mvn sonar:sonar \-Dsonar.projectKey=csdn \-Dsonar.host.url=http://localhost:9000 \-Dsonar.login=11759555a1a6adc448a7c9546c07f6b90ee78438
2.idea直接点

然后就可以看到结果了
sonar加pdf导出插件
插件版本对应
https://gitee.com/zzulj/sonar-pdf-plugin/releases
我用的3.0.3

复制到容器里
docker cp ./sonar-pdfreport-plugin-3.0.3.jar 容器id:/opt/sonarqube/extensions/plugins
重点:重启容器,并且,不能同时存在不同版本的插件不然容器都启动不了

重启以后来这里配置一下
最后sonar扫描就好了
在自己的project里会有more,点击下载

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
