6.云原生之jenkins集成SonarQube

文章目录

搭建 SonarQube

添加应用仓库https://charts.kubesphere.io/main,在仓库中安装SonarQube

搭建 SonarQube 并配置到 KubeSphere 将 SonarQube 集成到流水线 【应用仓库安装】

sonarqube地址:

yaml 复制代码
sonarqu-base-sonarqube.base.svc.cluster.local:9000
master_ip:32545

配置SonarQube

创建sonar-token生成令牌

240cb3903f4ee4aba15f531686dc6bc598c28cc3

查看jenkins暴露的NodePort端口

http://master节点ip:30180/sonarqube-webhook/

http://devops-jenkins.kubesphere-devops-system.svc.cluster.local

创建Webhook 服务器

点击下图create配置Jenkins Console URL

可使用内网域名:devops-jenkins.kubesphere-devops-system.svc.cluster.local

端口使用80

将 SonarQube 配置添加到 ks-installer


搜索devops修改配置保存

yaml 复制代码
  devops:
    enabled: true
    jenkinsMemoryLim: 8Gi
    jenkinsMemoryReq: 2Gi
    jenkinsVolumeSize: 8Gi
    # 添加如下配置
    sonarqube: # Add this field manually.
      externalSonarUrl: http://sonarqu-base-sonarqube.base.svc.cluster.local:9000 # SonarQube的IP地址.
      externalSonarToken: 240cb3903f4ee4aba15f531686dc6bc598c28cc3

Jenkins集成SonarQube

将 SonarQube 服务器添加至 Jenkins

jenkins地址:

yaml 复制代码
http://devops-jenkins.kubesphere-devops-system.svc.cluster.local:80
http://master_ip:30180

请使用地址 http://:30180 访问 Jenkins。安装 KubeSphere 时,默认情况下也会安装 Jenkins 仪表板。此外,Jenkins 还配置有 KubeSphere LDAP,这意味着您可以直接使用 KubeSphere 帐户(例如 admin/P@88w0rd)登录 Jenkins。有关配置 Jenkins 的更多信息,请参见 Jenkins 系统设置

jenkins配置SonarQube

点击左侧导航栏中的系统管理->向下翻页找到并点击系统配置->搜寻到 SonarQube servers ,然后点击 Add SonarQube

jenkins中配置SonarQube

输入 NameServer URL (http://:)

yaml 复制代码
http://sonarqu-base-sonarqube.base.svc.cluster.local:9000
http://192.168.31.21:32545

创建Jenkins凭证

点击添加 ,选择 Jenkins ,然后在弹出的对话框中用 SonarQube 管理员令牌创建凭证。创建凭证后,从 Server authentication token 旁边的下拉列表中选择该凭证。点击应用 完成操作。

填写SonarQube生成的凭证240cb3903f4ee4aba15f531686dc6bc598c28cc3

将 sonarqubeURL 添加到 KubeSphere 控制台

搜寻到 data.client.enableKubeConfig,在下方添加 devops 字段并指定 sonarqubeURL。

yaml 复制代码
client:
  enableKubeConfig: true
  devops: # 手动添加该字段。
    sonarqubeURL: http://sonarqu-base-sonarqube.base.svc.cluster.local:9000 # SonarQube IP 地址。

重启服务

yaml 复制代码
kubectl -n kubesphere-devops-system rollout restart deploy devops-apiserver
kubectl -n kubesphere-system rollout restart deploy ks-console

为新项目创建 SonarQube Token

您需要一个 SonarQube 令牌,以便您的流水线可以在运行时与 SonarQube 通信。

  1. 在 SonarQube 控制台上,点击 Create new project


  1. 输入项目密钥,例如 java-demo,然后点击 Set Up
  1. 输入项目名称,例如 java-sample,然后点击 Generate
  1. 创建令牌后,点击 Continue

b0ce224cf5d9fcd36509c86c968faf195b82a0e5

  1. 分别选择 JavaMaven 。复制下图所示绿色框中的序列号,如果要在流水线中使用,则需要在凭证中添加此序列号
yaml 复制代码
mvn sonar:sonar \
  -Dsonar.projectKey=java-demo \
  -Dsonar.host.url=http://192.168.31.21:32545 \
  -Dsonar.login=b0ce224cf5d9fcd36509c86c968faf195b82a0e5
相关推荐
阿里云云原生11 小时前
RCA 决定 AgenticOps 的行动方向:STAROps 如何把根因定位做成系统能力
云原生
键盘鼓手苏苏14 小时前
AI 内容生成管线设计:从多模态编排到质量守门的生产级架构
云原生·kubernetes·k8
Henry-SAP16 小时前
具身智能新突破:开源生态与IPO热潮
人工智能·云原生·sap·erp
Kismet_nvi18 小时前
Kubernetes 核心模块详细总结
云原生·容器·kubernetes
微擎应用市场19 小时前
微擎面板 W7Panel:一站式云原生管理平台,让 Kubernetes 触手可及
云原生·容器·kubernetes
张洛闻Eren19 小时前
云原生k8s【第一课】: Docker 容器技术
运维·云原生·容器·k8s
聊浮游21 小时前
运维2026全套最新学习资料
运维·微服务·云原生·容器
xiaoxiangsiyan2 天前
RHCE2026云原生路线EX188和EX288完整备考指南
运维·网络·云原生·自动化
m0_640602442 天前
2026 年餐饮收银系统前后端技术实现——核心架构与原理详解
后端·微服务·云原生·架构
AAA@峥2 天前
官方 Dashboard 还是 Kuboard?Kubernetes 可视化管理工具深度对比
云原生·容器·kubernetes