docker中的jenkins配置sonarQube的过程

 更新时间:2023年08月08日 16:23:02   作者:Alex镇  
SonarQube是一个开源的代码分析平台,用来持续分析和评测项目源代码的质量,通过SonarQube可以检测出项目中重复代码,潜在bug, 代码规范,安全性漏洞等问题,并通过SonarQube web UI展示出来,这篇文章主要介绍了docker中的jenkins配置sonarQube,需要的朋友可以参考下

docker中的jenkins去配置sonarQube

SonarQube 是一个开源的代码分析平台, 用来持续分析和评测项目源代码的质量。 通过SonarQube我们可以检测出项目中重复代码, 潜在bug, 代码规范,安全性漏洞等问题, 并通过SonarQube web UI展示出来。
1、代码质量和安全扫描和分析平台。
2、多维度分析代码:代码量、安全隐患、编写规范隐患、重复度、复杂度、代码增量、测试覆盖率等。
3、支持25+编程语言的代码扫描和分析,包含java\python\C#\javascript\go\C++等。
4、涵盖了编程语言的静态扫描规则: 代码编写规范+安全规范。
5、能够与代码编辑器、CI/CD平台完美集成。
6、能够与SCM集成,可以直接在平台上看到代码问题是由哪位开发人员提交。

1、拉取sonarQube

macdeMacBook-Pro:~ mac$ docker pull sonarqube:8.9.6-community
8.9.6-community: Pulling from library/sonarqube
8572bc8fb8a3: Pull complete 
702f1610d53e: Pull complete 
8c951e69c28d: Pull complete 
f95e4f8c4082: Pull complete 
0ac9ebcbeda3: Pull complete 
Digest: sha256:bef2a81963ccf2f3de0d793c172e4e343e55b9c6b0322dc610e427bc6f566799
Status: Downloaded newer image for sonarqube:8.9.6-community
docker.io/library/sonarqube:8.9.6-community
What's Next?
  View summary of image vulnerabilities and recommendations → docker scout quickview sonarqube:8.9.6-community

2、拉取postgres

macdeMacBook-Pro:~ mac$ docker pull postgres
Using default tag: latest
latest: Pulling from library/postgres
648e0aadf75a: Pull complete 
f715c8c55756: Pull complete 
b11a1dc32c8c: Pull complete 
f29e8ba9d17c: Pull complete 
78af88a8afb0: Pull complete 
b74279c188d9: Pull complete 
6e3e5bf64fd2: Pull complete 
b62a2c2d2ce5: Pull complete 
eba91ca3c7a3: Pull complete 
d4a24cdf2433: Pull complete 
b20f8a8dfd5c: Pull complete 
e0731dd084c3: Pull complete 
0361da6a228e: Pull complete 
Digest: sha256:8775adb39f0db45cf4cdb3601380312ee5e9c4f53af0f89b7dc5cd4c9a78e4e8
Status: Downloaded newer image for postgres:latest
docker.io/library/postgres:latest
What's Next?
  View summary of image vulnerabilities and recommendations → docker scout quickview postgres

3、编写docker-compose.yml

version: '3.1'
services:
  db:
    image: postgres
    container_name: db
    ports:
      - 5432:5432
    networks:
      - sonarnet
    environment:
      POSTGRES_USER: sonar
      POSTGRES_PASSWORD: sonar
  sonarqube:
    image: sonarqube:8.9.6-community
    container_name: sonarqube
    depends_on:
      - db
    ports:
      - 9000:9000
    networks:
      - sonarnet
    environment:
      SONAR_JDBC_URL: jdbc:postgresql://db:5432/sonar
      SONAR_JDBC_USERNAME: sonar
      SONAR_JDBC_PASSWORD: sonar
networks:
  sonarnet:
    driver: bridge

4、启动

macdeMacBook-Pro:sonarqube mac$ docker-compose up -d
[+] Running 3/3
 ✔ Network sonarqube_sonarnet  Created                                     0.0s 
 ✔ Container db                Started                                     0.4s 
 ✔ Container sonarqube         Started  

5、打开页面并配置新密码

默认是

adminadmin

6、jenkins下载插件

sonarQube Scanner

7、配置jenkins

这里Server authentication token需要取sonarQube中获取token

8、jenkins的项目中配置

之后将他移到构建之前

sonar.projectname=${JOB_NAME}
sonar.projectKey=${JOB_NAME}
sonar.source=./
sonar.java.binaries=target

9、开始构建

我构建的时候会报一个这样的错误,跟我之前访问docker中的oracle数据库应该是同样的错误,无法访问宿主机的localhost

lMac:docker.for.mac.host.internal
Linux:host.docker.internal

可以看我之前的文章https://www.jb51.net/article/232934.htm

之后我将localhost换成

sonar.host.url=http://docker.for.mac.host.internal:9000
sonar.projectname=${JOB_NAME}
sonar.projectKey=${JOB_NAME}
sonar.source=./
sonar.java.binaries=target

10、构建成功

到此这篇关于docker中的jenkins去配置sonarQube的文章就介绍到这了,更多相关docker jenkins配置sonarQube内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Docker挂载资料卷部署Nginx

    Docker挂载资料卷部署Nginx

    这篇文章介绍了Docker挂载资料卷部署Nginx,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-01-01
  • Docker 如何安装 Nginx

    Docker 如何安装 Nginx

    这篇文章主要介绍了Docker 如何安装 Nginx,帮助大家更好的使用docker容器,感兴趣的朋友可以了解下。
    2020-09-09
  • Docker push镜像失败解决方法

    Docker push镜像失败解决方法

    这篇文章主要介绍了Docker push镜像失败解决方法的相关资料,这里对解决push 镜像失败提供了解决方案,需要的朋友可以参考下
    2016-12-12
  • Docker 教程之私有仓库详解

    Docker 教程之私有仓库详解

    这篇文章主要介绍了Docker 教程之私有仓库详解的相关资料,需要的朋友可以参考下
    2016-12-12
  • 基于Docker部署Tomcat集群、 Nginx负载均衡的问题小结

    基于Docker部署Tomcat集群、 Nginx负载均衡的问题小结

    这篇文章主要介绍了基于Docker部署 Tomcat集群、 Nginx负载均衡,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • docker部署crownblog项目到阿里云的方法步骤

    docker部署crownblog项目到阿里云的方法步骤

    这篇文章主要介绍了docker部署crownblog项目到阿里云的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05
  • 使用docker部署django的详细步骤

    使用docker部署django的详细步骤

    当用Django框架开发的网站项目完成后上线的话可以用物理主机、虚拟机来部署,也可以容器,下面这篇文章主要给大家介绍了关于使用docker部署django的详细步骤,需要的朋友可以参考下
    2022-08-08
  • docker部署golang http服务时端口无法访问的问题解决

    docker部署golang http服务时端口无法访问的问题解决

    本文主要介绍了docker部署golang http服务时端口无法访问的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • docker安装redis并以配置文件方式启动详解

    docker安装redis并以配置文件方式启动详解

    这篇文章主要介绍了docker安装redis并以配置文件方式启动详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • 一文教你如何通过 Docker 快速搭建各种测试环境

    一文教你如何通过 Docker 快速搭建各种测试环境

    这篇文章主要介绍了一文教你如何通过 Docker 快速搭建各种测试环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07

最新评论