1 前言
良好的代码习惯是一个优秀程序员应该具备的品质,但靠人的习惯与记忆来保证代码质量,始终不是一件靠谱的事。在计算机行业应该深知,只要是人为的,都会有操作风险。本文讲解如何通过Docker
搭建代码检测平台SonarQube
,并使用它来检测maven
项目的代码。
2 Docker安装SonarQube
2.1 安装
通过Docker
安装,方便快捷,不需要时直接删掉容器和镜像就好了。
# 拉取Sonar镜像 docker pull sonarqube:8.3.1-community # 运行实例 docker run --name sonarqube -p 9000:9000 -d sonarqube:8.3.1-community
接着访问:http://localhost:9000/ 就可以了,默认管理员用户和密码为:admin/admin
。
这里选择免费的社区版Community
,另外还有Developer
、Enterprise
等收费版本,功能更强大,具体差别如下:
2.2 指定数据库
一般我们会自己启动一个数据库如Oracle
、MySQL
或PostgreSQL
。相关系统信息可以在Administration-System
查看,我们不指定的话,默认是使用内嵌的H2
数据库。如果要指定其它数据库,启动Docker时需要指定:
-e SONARQUBE_JDBC_USERNAME="xxx" \
-e SONARQUBE_JDBC_PASSWORD="***" \
-e SONARQUBE_JDBC_URL="jdbc:mysql://xxx"
使用H2
数据库有会以下限制:
内嵌数据库只能用于测试场景。内嵌数据库无法扩展,也无法升级到新版本的SonarQube,并且不能支持将你的数据迁移至其他数据库引擎。
所以建议实际使用时,不要使用内嵌的H2
数据库。
2.3 进入容器
通过命令:
$ docker exec -it 容器ID bash bash-5.0# ls COPYING bin conf data elasticsearch extensions lib logs temp web bash-5.0#
可以进入SonarQube
容器。在目录/opt/sonarqube
可以查看配置文件、插件、数据文件和日志文件等,实际使用应该映射到宿主机的目录上,这样重新启动一个实例,数据和配置都还在。
2.4 安装插件
SonarQube
提供了强大的插件管理功能,以中文语言包为示例,讲解如何安装插件:
Administration-Marketplace-Plugins
,在搜索框输入Chinese
就可以选择安装了。
当状态显示为Install Pending
时,说明插件安装完成,点击Restart Server
即可生效。
3 通过maven检测代码
3.1 通过账号密码使用
指定SonarQube
平台的地址,并指定用户名和密码,就能检测代码了,具体命令如下:
mvn clean verify sonar:sonar -Dsonar.host.url=http://localhost:9000 -Dsonar.login=admin -Dsonar.password=admin
3.2 通过Token令牌使用
当然,直接使用admin
并暴露密码并不是一个好的习惯,可以通过配置-权限-用户
来创建用户,并创建令牌。
复制令牌:9656c84090b2481db6ea97b6d14d87d546bff619
。
这样,就可以通过令牌来操作了:
mvn clean verify sonar:sonar -Dsonar.host.url=http://localhost:9000 -Dsonar.login=9656c84090b2481db6ea97b6d14d87d546bff619
执行命令后,就会在界面上自动新建了一个项目,并给出检测结果:
Sonar
提供了许多指标如测试覆盖率、复杂度等,这能大大帮助我们写出更好的代码:
4 总结
SonarQube
功能强大,是DevOps
的重要工具之一,需要了解和掌握。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
更新日志
- 群星《我们的歌第六季 第1期》[FLAC/分轨][456.01MB]
- 齐秦 《辉煌30年DSD》24K珍藏版2CD[WAV+CUE][1.9G]
- 张玮伽《聆听伽音 HQCDII 》[正版原抓WAV+CUE][1.1G]
- 阿杜2002《天黑》台湾首版 [WAV+CUE][1.2G]
- 关淑怡.2019-Psychoacoustics(金曲重绎)(24BIT)【FLAC】
- 米线《醉迷声线6N纯银SQCD》【WAV+CUE】
- 刘紫玲2024《清平调》[低速原抓WAV+CUE]
- 伍佰1998《世界第一等》98绝版收藏EP[WAV+CUE]
- 天乐试机天碟 《终极参考SACD》十大发烧唱片之一[WAV分轨]
- 群星《新说唱2024 第12期 (下)》[320K/MP3][95.27MB]
- 楼兰2024-《楼兰传奇》[低速原抓WAV+CUE]
- 楼兰《楼兰传奇2》2024[低速原抓WAV+CUE]
- 陈果《有了你》UPM24K金碟[日本限量版][WAV+CUE]
- 群星《新说唱2024 第12期 (下)》[FLAC/分轨][506.43MB]
- 李常超 (Lao乾妈)《天生江湖》[320K/MP3][168.84MB]