[聚合文章] 【SonarQube】使用Docker来快速启动

MySQL 2017-12-10 19 阅读

SonarQube作为静态代码检查工具,适用于Java/PHP/C#/JavaScript等的语言,可以说是相当通用。而对于部署安装来说,采用Docker的集成化部署方式自然是最快的。这里罗列一下供各位看官快速上手。

1、试用SonarQube

docker run -d --name sonarqube -p 9000:9000 -p 9092:9092 sonarqube

之后在浏览器里打开 http://localhost:9000/ 即可打开界面试用了,管理员用户名、密码为admin

2、线上真实环境同样可以用Docker

真实环境需要将数据库落地,可以用Docker启用一个MySQL实例,如下(注意替换路径)

docker run --name mysql-sonar -e MYSQL_ROOT_PASSWORD=mysql -e MYSQL_DATABASE=sonar -e MYSQL_USER=sonar -e MYSQL_PASSWORD=sonar -v /path/to/local/mysql/dir:/var/lib/mysql -p 33066:3306 -d mysql:latest

再通过link来加载MySQL实例

docker run -d --name sonarqube -p 9000:9000 -p 9092:9092  --link=mysql-sonar:mysql   -e SONARQUBE_JDBC_USERNAME=sonar     -e SONARQUBE_JDBC_PASSWORD=sonar    -e SONARQUBE_JDBC_URL="jdbc:mysql://mysql:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false" sonarqube

3、使用Sonar Scanner做代码扫描

下载Sonar Scanner,看 这里

解压后根据SonarQube的命令提示在代码根目录跑类似如下的命令即可

sonar-scanner \
  -Dsonar.projectKey=xxx \
  -Dsonar.sources=. \
  -Dsonar.host.url=http://xxxxxx:9000 \
  -Dsonar.login=c686e3d03abccf022a0b92c088e5638fdaf81cxx

扫描完成后就可以在SonarQube界面上看到扫描结果了。如果项目代码量比较大,扫描会比较花时间,需要耐心等待扫描完成。

参考:

  1. https://hub.docker.com/_/sonarqube/
  2. https://hub.docker.com/_/mysql/

注:本文内容来自互联网,旨在为开发者提供分享、交流的平台。如有涉及文章版权等事宜,请你联系站长进行处理。