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 跨主机容器间相互访问的实现

    Docker 跨主机容器间相互访问的实现

    本文主要介绍了Docker 跨主机容器间相互访问的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • 教你如何通过编写dockerfile部署python项目

    教你如何通过编写dockerfile部署python项目

    Dockerfile是一个放置在项目根目录下的描述文件,可以利用 Docker 命令基于该文件构建一个镜像,下面这篇文章主要给大家介绍了关于如何通过编写dockerfile部署python项目的相关资料,需要的朋友可以参考下
    2024-07-07
  • WIN10系统和Docker内部容器IP互通方式

    WIN10系统和Docker内部容器IP互通方式

    这篇文章主要介绍了WIN10系统和Docker内部容器IP互通方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • Docker如何实现离线安装

    Docker如何实现离线安装

    文章介绍了如何在离线环境中安装Docker,并将其注册为系统服务,主要内容包括下载Docker二进制文件、上传到服务器、解压安装包、配置系统服务以及验证安装是否成功
    2024-11-11
  • CentOS Stream 9 服务器 Docker 部署 KaiwuDB 实战指南

    CentOS Stream 9 服务器 Docker 部署 

    本文详细记录了使用Docker部署KaiwuDB的过程,并包括模数据库支持序表与关系表跨模查询实战,本文结合实例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧
    2026-06-06
  • docker端口映射及外部无法访问问题

    docker端口映射及外部无法访问问题

    这篇文章主要介绍了docker端口映射及外部无法访问问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • docker images,info,-d等命令报错的解决方法

    docker images,info,-d等命令报错的解决方法

    最近刚接触Docker,所以在学习的过程中出现了好多的问题,百度上不好找,谷歌的话,楼主不会翻墙。后来通过各方求助和细心研究解决了一些遇到的问题,现在将遇到的问题和解决方法分享给大家,有需要的朋友们可以参考借鉴。
    2016-11-11
  • Docker实现将镜像从1.2GB压缩到200MB的优化指南

    Docker实现将镜像从1.2GB压缩到200MB的优化指南

    作为一名在容器化领域摸爬滚打多年的开发者,深知Docker镜像大小对生产环境的影响,本文将详细记录优化历程,从问题分析到解决方案实施,从理论原理到实战技巧,感兴趣的小伙伴可以了解下
    2025-09-09
  • 使用Docker搭建Picsur图床服务的实现

    使用Docker搭建Picsur图床服务的实现

    本文介绍如何在腾讯云轻量应用服务器通过Docker部署Picsur图床服务,文中通过图文示例步骤介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧
    2025-07-07
  • Windows11安装Docker Desktop教程的图文教程

    Windows11安装Docker Desktop教程的图文教程

    本文主要介绍一下Windows11安装Docker Desktop教程的图文教程,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-10-10

最新评论