sonarqube是一款代码质量检查工具,使用sonar扫描我们写过的代码,可以有助于检查出代码的bug、规范性和健壮性,有助于提高我们的代码质量。
一、安装docker
安装完成之后,命令行输入
docker -v
出现版本号即为安装完成。
。。。。。。。。
二、安装sonar镜像
1、在命令行输入
docker -search sonar
会看到有很多的sonar版本:
2、我们直接使用命令,docker pull sonar 默认下载最新版本的sonarqube
docker pull sonar
下载完成后 执行docker images 查看已经下载的镜像文件。已经有了sonarqube。
3、运行sonar
命令行输入
docker run -p9000:9000 sonarqube
sonar默认端口为9000,将docker内镜像的端口9000映射到主机端口9000,这时候我们打开浏览器输入网址 localhost:9000,就可以进入docker的页面了。默认登录的账号和密码都是admin,到这一步我们的sonar安装运行就完成了。
4、持久化sonar
如果需要持久化我们的sonar扫描数据,可以使用以下命令启动sonar,jdbc信息为mysql的连接、用户名和密码。sonar会将扫描信息持久化到mysql中。
docker run --restart=always -d --name sonarqube -p9000:9000 -e sonar.jdbc.username=root -e sonar.jdbc.password=1443267814 -e sonar.jdbc.url=jdbc:mysql://127.0.0.1:3306/demo?Unicode=true sonarqube
三、使用sonar扫描代码
登录进入sonar页面后,点击创建一个项目
点击 manually(手动的),这里也可以选择github,在项目中使用git关联sonar可以更方便的扫描代码分支。
然后随便输入一个project名称,这里建议与项目名称相同。
随便输入一个什么(建议与项目名称相同),生成一个token。生成后点击continue,继续。
根据我们的项目选址maven或者gradle,或者其他。sonar会在下方自动给出扫描代码的命令。然后打开我们的idea,在下方命令行执行。这里有一个坑点,由于sonar会去target目录下扫描我们的class文件,所以要先将项目打包
mvn -package
然后再去扫描,扫描完成之后回到localhost:9000,就可以看到我们代码中的质量问题了。
注:最新版本(5.7以上)sonarqube已经不支持mysql,建议使用其他数据库或使用5.2版本
docker pull sonar:5.2