当前位置:   article > 正文

部署Sonarqube并使用Jenkins集成_jenkins配置sonarqube

jenkins配置sonarqube

服务端部署(Dokcer)

安装Docker

网上下载一个docker的安装包,为了省事也可以直接用yum,我比较喜欢用安装包来安装

安装解压安装包,复制文件到*/usr/bin*,复制服务启动脚本到*/usr/lib/systemd/system/*

  1. cd /usr/local/src/
  2. tar -xvf docker-19.03.12.tgz
  3. cp /usr/local/src/docker/* /usr/bin/
  4. cp /usr/local/src/docker.service /usr/lib/systemd/system/

修改容器存放目录

mkdir -p /data/docker

修改docker.service文件,在ExecStart后添加如下内容

--graph=/data/docker --storage-driver=overlay

用systemctl管理docker启停

  1. systemctl start docker #启动docker
  2. systemctl stop docker #停止docker
  3. systemctl restart docker #重启docker
  4. systemctl status docker #查看docker状态
  5. docker info #查看docker信息

镜像加速:

1.修改docker配置文件,我们选用七牛云镜像站,也可以选阿里镜像

2.重启

docker中国官方镜像加速地址:https://registry.docker-cn.com

  1. [root@docker01 ~]# cat /etc/docker/daemon.json
  2. {"registry-mirrors": ["https://reg-mirror.qiniu.com"]}

安装docker-compose

复制文件到*/usr/local/bin/*,赋予执行权限,创建软链接

  1. cp /usr/local/src/docker-compose /usr/local/bin/docker-compose
  2. chmod +x /usr/local/bin/docker-compose
  3. ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

查看docker-compose版本

  1. [root@test src]# docker-compose --version
  2. docker-compose version 1.24.1, build 4667896b

服务端部署

使用docker-compose部署Sonarqube的服务端

  1. version: '3'
  2. services:
  3. postgres:
  4. image: postgres:latest
  5. container_name: postgres
  6. restart: always
  7. privileged: true
  8. networks:
  9. - sonar
  10. volumes:
  11. - ./sonar/postgres/postgresql:/var/lib/postgresql
  12. - ./sonar/postgres/data:/var/lib/postgresql/data
  13. - /etc/localtime:/etc/localtime:ro
  14. ports:
  15. - "5432:5432"
  16. environment:
  17. POSTGRES_USER: sonar
  18. POSTGRES_PASSWORD: sonar
  19. POSTGRES_DB: sonar
  20. TZ: Asia/Shanghai
  21. sonar:
  22. image: sonarqube:8.9.10-community
  23. container_name: sonar
  24. restart: always
  25. privileged: true
  26. networks:
  27. - sonar
  28. volumes:
  29. - ./sonar/sonarqube/logs:/opt/sonarqube/logs
  30. - ./sonar/sonarqube/conf:/opt/sonarqube/conf
  31. - ./sonar/sonarqube/data:/opt/sonarqube/data
  32. - ./sonar/sonarqube/extensions:/opt/sonarqube/extensions
  33. ports:
  34. - "9002:9000"
  35. links:
  36. - "postgres:postgres"
  37. environment:
  38. ALLOW_EMPTY_PASSWORD: "yes"
  39. SONARQUBE_JDBC_USERNAME: sonar
  40. SONARQUBE_JDBC_PASSWORD: sonar
  41. SONARQUBE_JDBC_URL: "jdbc:postgresql://postgres:5432/sonar"
  42. networks:
  43. sonar:
  44. driver: bridge

部署完成后打开浏览器,输入服务器的地址:9002进入sonarqube,默认用户密码是admin/admin

我这台服务器是http://192.168.0.176:9002

进入系统后在配置里选择应用商店,搜索chinese安装中文插件

Jenkins集成sonar-scanner

sonar-scanner是用来扫描代码中的bug,也就是客户端

使用链接下载安装包

  1. cd /data/jenkins
  2. wget https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-4.8.0.2856-linux.zip

解压,并修改配置文件,加上两条:

sonar.host.url=http://192.168.0.176:9002

sonar.sourceEncoding=UTF-8

  1. unzip sonar-scanner-cli-4.8.0.2856-linux.zip
  2. cat sonar-scanner-4.8.0.2856-linux/conf/sonar-scanner.properties
  3. #Configure here general information about the environment, such as SonarQube server connection details for example
  4. #No information about specific project should appear here
  5. #----- Default SonarQube server
  6. #sonar.host.url=http://localhost:9000
  7. sonar.host.url=http://192.168.0.176:9002
  8. #----- Default source code encoding
  9. #sonar.sourceEncoding=UTF-8
  10. sonar.sourceEncoding=UTF-8

在sonarqube的我的账号生成一个令牌,生成以后复制一下

在Jenkins中找到系统配置,添加这个sonarqube的url,token中点下面的添加,把刚复制的令牌添加上去

再到全局配置

添加Node js环境和SonarQube Scanner环境

创建任务

创建一个Jenkins任务(自由风格)来测试一下扫描

填上git地址和分支后,下面添加Node环境

构建步骤中选择Execute SonarQube Scanner

选择几个参数,projectKey和projectName可以自己随意命名,但是最好不要有中文

  1. sonar.projectKey=estate4-plateform-server
  2. sonar.projectName= estate4-plateform-server
  3. sonar.language=java
  4. sonar.sourceEncoding=UTF-8
  5. sonar.sources=$WORKSPACE
  6. sonar.java.binaries=$WORKSPACE

配置好了以后就可以开始执行这个任务了,执行成功后会可以去服务端查看它的质量了,默认的配置会检测出很多语法问题和代码不规范的问题,后期还可以自己定义检测质量的规则和合格的级别

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

闽ICP备14008679号