当前位置:   article > 正文

微服务项目使用Docker搭建Sonar本地环境以及需要注意事项(适配Win和Mac版本)_docker sonar

docker sonar

一,SonarQube简介

sonarqube是一款代码质量检查工具,使用sonar扫描我们写过的代码,可以有助于检查出代码的bug、规范性和健壮性,有助于提高我们的代码质量。

二,安装Docker

     下载网址:https://hub.docker.com/
     安装完成之后,命令行输入
     docker -v	
  • 1
  • 2
  • 3

在这里插入图片描述

三,安装sonar

(注意事项:Sonar的安装与配置需要JAVA环境;因此,我们还需要提前准备好JAVA环境;要选择能够和Sonar
 匹配的版本来进行安装,jdk安装过程省略);
	1,在命令行输入
	docker -search sonar 
	会有很多的sonar版本
  • 1
  • 2
  • 3
  • 4
  • 5

在这里插入图片描述

	2,我们直接使用命令,docker pull sonar 默认下载最新版本的sonarqube
	docker pull sonar
	或者使用
	docker pull sonarqube:8.9.2-community下载指定版本
  • 1
  • 2
  • 3
  • 4

在这里插入图片描述
3,切换到conf目录下,对sonar.properties文件进行配置
在这里插入图片描述

4、运行sonar  
	 命令行输入docker run -p9000:9000 sonarqube
	 sonar默认端口为9000,将docker内镜像的端口9000映射到主机端口9000,这时候我们打开浏览器
	 输入网址 localhost:9000,就可以进入docker的页面了。默认登录的账号和密码都是admin,到这一步
	 我们的sonar安装运行就完成了。
  • 1
  • 2
  • 3
  • 4
  • 5

在这里插入图片描述

4、持久化sonar
如果需要持久化我们的sonar扫描数据,可以使用以下命令启动sonar,jdbc信息为mysql的连接、用户名和密码。sonar会将扫描信息持久化到mysql中。
docker run --restart=always -d --name sonarqube
-p 9000:9000
-e sonar.jdbc.username=root
-e sonar.jdbc.password=123456
-e sonar.jdbc.url=jdbc:mysql://172.30.50.215:3306/payment? useUnicode=true&characterEncoding=UTF-8

\ sonarqube

四,安装sonar-scanner

	1,安装SonarScanner
	SonarScanner地址:https://docs.sonarqube.org/latest/analyzing-source-code/scanners/sonarscanner/
	或使用docker下载sonar-scanner
	$ docker pull sonarsource/sonar-scanner-cli:latest
  • 1
  • 2
  • 3
  • 4

在这里插入图片描述
#----- Default SonarQube server
sonar.host.url=http://127.0.0.1:9000

#----- Default source code encoding
#sonar.sourceEncoding=UTF-8

sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
useConfigs=maxPerformance
sonar.sourceEncoding=UTF-8
sonar.login=admin
sonar.password=admin

五,使用sonar扫描代码

1,登录进入sonar页面后,点击创建一个项目在这里插入图片描述
2,点击 manually(手动的),这里也可以选择github,在项目中使用git关联sonar可以更方便的扫描代码分支。
在这里插入图片描述
3,然后随便输入一个project名称,这里建议与项目名称相同。
在这里插入图片描述
4,随便输入一个什么(建议与项目名称相同),生成一个token。生成后点击continue,继续。
在这里插入图片描述
5,进入到需要扫描的服务
在这里插入图片描述
sonar-scanner \
-Dsonar.projectKey=mss-dhr-integration-test
-Dsonar.sources=. \ -Dsonar.host.url=http://localhost:9000
-Dsonar.login=sqp_c418158c16fe197504c950ab06f5282663c40e20 -Dsonar.login=“admin” -Dsonar.password=“admin123”
-D sonar.java.binaries=/Users/xuxukai/Documents/yygxproject/mss-dhr-integration-test/mss-dhr-integration-test/dhr-biz-cadre/target/classes

(根据我们的项目选址maven或者gradle,或者其他。sonar会在下方自动给出扫描代码的命令。然后打开我们的idea,在下方命令行执行。这里有一个坑点,由于sonar会去target目录下扫描我们的class文件,所以要先将项目打包)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/48850
推荐阅读
相关标签
  

闽ICP备14008679号