docker sonarqube 7.7 sonar-scanner-4.6.2 maven 安装、搭建+实战

docker sonarqube 7.7 sonar-scanner-4.6.2 maven 安装、搭建+实战,第1张

docker sonarqube 7.7 sonar-scanner-4.6.2 maven 安装、搭建+实战

文章目录
          • 一、docker安装Mysql
            • 1. 映射目录
            • 2. 赋予权限
            • 3. 镜像拉取
            • 4. 运行容器
            • 5. 查看日志
            • 6. 创建数据库
          • 二、docker安装sonarqube
            • 2.1. 映射目录
            • 2.2.赋予权限
            • 2.3. 镜像拉取
            • 2.4. 运行容器
            • 2.5. 查看日志
          • 二、中文简体
            • 2.1. 版本对照
            • 2.2. download
            • 2.3. 重启容器
          • 三、规则添加
            • 3.1. 规则无
            • 3.2. 规则下载
            • 3.3. 插件放置
            • 3.3. 重启容器
          • 四、规则添加
            • 4.1. 下载
            • 4.2. 安装scanner
            • 4.3. 更换jdk版本
          • 五、maven安装配置
            • 5.1. 下载
            • 5.2. 解压
            • 5.3. 配置环境变量
          • 六、 sonar maven组合
            • 6.1. 生成token
            • 6.2. 项目创建

一、docker安装Mysql 1. 映射目录
mkdir -p /app/mysql/conf
mkdir -p /app/mysql/logs
mkdir -p /app/mysql/data
2. 赋予权限
chmod -R 777 /app/mysql/
3. 镜像拉取

这一步可以跳过,直接执行运行容器即可

docker pull mysql:5.7
4. 运行容器

先通过镜像创建mysql容器

docker run --name mysql5.7 -d 
-p 3306:3306 
-v /app/mysql/conf:/etc/my.cnf.d 
-v /app/mysql/logs:/logs 
-v /app/mysql/data:/var/lib/mysql 
-e MYSQL_ROOT_PASSWORD=123456 
--restart always 
--privileged=true 
mysql:5.7
5. 查看日志
 docker logs -f mysql5.7
6. 创建数据库
create databases sonar;
二、docker安装sonarqube 2.1. 映射目录
mkdir /app/sonarqube/logs /app/sonarqube/conf /app/sonarqube/data /app/sonarqube/extensions  -p
2.2.赋予权限
chmod -R 777 /app/sonarqube/
2.3. 镜像拉取

这一步可以跳过,直接执行运行容器即可

docker pull sonarqube:7.7-community
2.4. 运行容器
 docker run 
 -d 
 --name sonarqube7.7 
 -p 9000:9000 
 -p 9092:9092 
 -e SONARQUBE_JDBC_USERNAME=root 
 -e SONARQUBE_JDBC_PASSWORD=123456 
 -e SONARQUBE_JDBC_URL="jdbc:mysql://192.168.92.129:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false" 
 --privileged=true 
 -v /app/sonarqube/logs:/opt/sonarqube/logs 
 -v /app/sonarqube/conf:/opt/sonarqube/conf 
 -v /app/sonarqube/data:/opt/sonarqube/data 
 -v /app/sonarqube/extensions:/opt/sonarqube/extensions
 sonarqube:7.7-community

注意里面的JDBC相关的url uesrname password要改为跟数据库一致的

2.5. 查看日志
 docker logs -f sonarqube7.7


http://192.168.92.129:9000/

http://ip:9000/


账户密码都是admin

admin

二、中文简体 2.1. 版本对照

这是SonarQube的汉化包

兼容列表如下:

如果你是8.7的可以直接market搜索下载

2.2. download
Chinese

github汉化插件下载

按照版本对照要求,我的版本是7.7的,需要去github去下载,手动添加


把sonar-l10n-zh-plugin-1.27.jar复制到

cd /app/sonarqube/extensions/plugins

2.3. 重启容器
docker restart sonarqube7.7
三、规则添加 3.1. 规则无

quality profile页面中,缺少quality profile

3.2. 规则下载

规则都有兼容的版本
8.9版本中很多不需要安装了
参照:https://docs.sonarqube.org/latest/instance-administration/plugin-version-matrix/。
凡是提示Bundled的都已经默认集成了:


插件版本sonar-java-plugin<=5.14.0.18788sonar-javascript-plugin<=5.2.1.7778

规则列表:
https://binaries.sonarsource.com/Distribution/


这里一java语言插件为例,进行演示

3.3. 插件放置

把sonar-java-plugin-5.14.0.18788.jar sonar-javascript-plugin-5.2.1.7778.jar复制到/app/sonarqube/extensions/plugins目录下面

cd /app/sonarqube/extensions/plugins
3.3. 重启容器
  • 重启容器
docker restart sonarqube7.7

四、规则添加 4.1. 下载

https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/
一般是安装最新的我个人。选择了sonar-scanner-cli-4.6.1.2450-linux.zip。

4.2. 安装scanner
cd /app
wgethttps://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-4.6.2.2472-linux.zip
unzip sonar-scanner-cli-4.6.2.2472-linux.zip

vim /etc/profile
export SCANNER_HOME=/app/sonar-scanner-4.6.2.2472-linux
export PATH=$PATH:$SCANNER_HOME/bin


source /etc/profile


确认版本安装成功生效

[root@localhost sonar-scanner-4.6.2.2472-linux]# sonar-scanner -v
INFO: Scanner configuration file: /app/sonar-scanner-4.6.2.2472-linux/conf/sonar-scanner.properties
INFO: Project root configuration file: NONE
INFO: SonarScanner 4.6.2.2472
INFO: Java 11.0.11 AdoptOpenJDK (64-bit)
INFO: Linux 3.10.0-957.el7.x86_64 amd64

4.3. 更换jdk版本
vim /app/sonar-scanner-4.6.2.2472-linux/bin/sonar-scanner
###修改use_embedded_jre参数
use_embedded_jre=false
[root@localhost bin]# sonar-scanner -v
INFO: Scanner configuration file: /app/sonar-scanner-4.6.2.2472-linux/conf/sonar-scanner.properties
INFO: Project root configuration file: NONE
INFO: SonarScanner 4.6.2.2472
INFO: Java 1.8.0_301 Oracle Corporation (64-bit)

五、maven安装配置 5.1. 下载
wget  https://mirrors.bfsu.edu.cn/apache/maven/maven-3/3.8.4/binaries/apache-maven-3.8.4-bin.tar.gz
5.2. 解压
tar -zxvf apache-maven-3.8.4-bin.tar.gz
5.3. 配置环境变量
vi /etc/profile
export M2_HOME=/app/apache-maven-3.8.4
export PATH=$M2_HOME/bin:$PATH
source /etc/profile

验证

mvn -v
六、 sonar maven组合 6.1. 生成token

6.2. 项目创建

如果只是为了验证maven和sonar可以随便上传一个maven项目即可。
我这里演示,随机找了个项目,等会回合jenkins进行集成,创建springboot项目上传gitlab,这里演示采用已经准备好的项目,

mvn sonar:sonar 
  -Dsonar.projectKey=test 
  -Dsonar.host.url=http://192.168.92.129:9000 
  -Dsonar.login=2023104e205b5aafe608584b0891a95442fe3247

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5611862.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存