docker sonarqube地址:https://hub.docker.com/_/sonarqube
docker mysql地址:https://hub.docker.com/_/mysql
以下在linux环境执行:
一、拉取sonarqube镜像
docker pull sonarqube
二、docker安装mysql
1、拉取mysql 5.7版本镜像
docker pull mysql:5.7
2、启动mysql
docker run -p 3307:3306 --name mysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
3、进入启动的mysql container
docker exec -it mysql(容器名) bash
4、创建sonar数据库和sonar用户
#登录mysql
mysql -u root -p
#创建sonar数据库
create database sonar
五、sonar客户端sonar-scanner的安装
1、下载onar-scanner客户端
wget https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-3.3.0.1492-linux.zip
2、解压
unzip sonar-scanner-cli-3.3.0.1492-linux.zip sonar-scanner
3、移到标准位置
mv son-scanner /usr/local/sonar-scanner/
4、修改配置
cd /usr/local/sonar-scanner/conf
vi sonar-scanner.properties
#----- Default SonarQube server
sonar.host.url=http://ip:9000(sonar服务端访问地址)
#----- Default source code encoding
sonar.sourceEncoding=UTF-8
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
sonar.jdbc.url=jdbc:mysql://ip:3307/sonar?useUnicode=true&characterEncoding=utf8
sonar.login=admin
sonar.password=admin
4、环境变量配置
vi /etc/profile
在末尾环境变量处增加以下内容
export SONAR_SCANNER_HOME=/usr/local/sonar-scanner/
export PATH=$SONAR_SCANNER_HOME/bin:$PATH
5、验证
在linux任意目录执行sonar-scanner会进入执行过程,证明安装成功
六、程序目录下的sonar-project.properties配置
1、在程序pom.xml所在目录添加sonar-project.properties文件
2、sonar-project.properties文件内容如下
#项目的key(对应sonar服务端的一个身份标识)
sonar.projectKey=xx-project
#项目的名字(可以随便写,这个名字在sonar显示的)
sonar.projectName=xxproject
#项目的版本
sonar.projectVersion=1.0
#需要分析的源码的目录
sonar.sources=.
#这是target(如果没编译可以不写)
sonar.java.binaries=src
#java语言
#sonar.language=java
#编码格式
sonar.sourceEncoding=UTF-8
7、执行扫描验证
在项目根目录执行sonar-scanner
到sonar服务端项目列表查看结果
八、jenkins打通
待续