本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

sonar Docker 镜像下载 - 轩辕镜像

sonar 镜像详细信息和使用指南

sonar 镜像标签列表和版本信息

sonar 镜像拉取命令和加速下载

sonar 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

sonar
ictu/sonar
自动构建

sonar 镜像详细信息

sonar 镜像标签列表

sonar 镜像使用说明

sonar 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

ICTU使用的SonarQube容器镜像,包含插件、配置文件及配置,用于代码质量和安全性分析
1 收藏0 次下载activeictu镜像

sonar 镜像详细说明

sonar 使用指南

sonar 配置说明

sonar 官方文档

ICTU SonarQube 容器镜像文档

镜像概述和主要用途

ICTU SonarQube 容器镜像是ICTU内部使用的SonarQube部署版本,集成了预配置的插件、质量配置文件和默认设置,旨在简化代码质量分析流程。该镜像基于***SonarQube构建,针对ICTU项目需求进行定制优化。

项目地址:<[***]>

核心功能和特性

  • 自动质量配置文件生成:启动时为支持的语言自动创建质量配置文件,并设为默认配置
  • 配置文件扩展机制:支持通过命名规则(EXTENDED/DEFAULT后缀)扩展或保留默认配置
  • 规则自定义管理:通过环境变量灵活配置规则启用/禁用状态及参数调整
  • PostgreSQL集成支持:提供Docker Compose配置示例,支持与PostgreSQL数据库集成
  • 启动控制功能:包含数据库可用性等待机制及管理员密码自动更新功能
  • 超时配置:支持数据库连接超时和SonarQube启动超时自定义

使用场景和适用范围

  • ICTU内部项目的代码质量持续集成分析
  • 需要自定义代码质量规则的开发团队
  • 采用Docker容器化部署SonarQube的环境
  • 需快速搭建包含预设规则集的代码质量检测平台

详细使用方法和配置说明

质量配置文件管理

创建新质量配置文件

容器启动时,将为支持的语言自动创建质量配置文件,新配置文件默认设为项目默认配置。

扩展默认配置文件

  • 需确保自定义配置文件名称以EXTENDED(或小写extended)结尾
  • 扩展配置将继承默认规则并添加自定义规则

保留默认配置文件

  • 若需避免自动覆盖默认配置,配置文件名称需以DEFAULT(或小写default)结尾

警告:在EXTENDED配置文件中,若对Sonar Way配置文件中原先禁用的规则进行调整,该调整在SonarQube实例重启后将无法保留。

覆盖ICTU标准质量配置文件

通过环境变量自定义项目级质量规则,实现对ICTU标准质量配置文件的覆盖。

环境变量配置

环境变量说明格式示例
PROJECT_CODE项目代码,作为质量配置文件名称前缀PROJ1
PROJECT_RULES规则调整列表,分号分隔,支持启用(+)、禁用(-)及参数调整+csharpsquid:S104;-typescript:S1301

规则调整语法

  • 启用规则+<规则键>,如 +csharpsquid:S104
  • 禁用规则-<规则键>,如 -typescript:S1301
  • 调整规则参数<规则键>|参数名=值,如 csharpsquid:S110|max=6

完整示例

bash
PROJECT_CODE=PROJ1
PROJECT_RULES=+csharpsquid:S104;-typescript:S1301;+csharpsquid:S110|max=6

Docker部署方案示例

Docker Compose 与 PostgreSQL集成

以下示例展示如何通过Docker Compose部署SonarQube与PostgreSQL数据库:

yaml
version: '3.7'
services:
  www:
    image: ictu/sonar:10.1.0
    environment:
      # 数据库连接配置
      - SONAR_JDBC_URL=jdbc:postgresql://db:5432/sonar
      - SONAR_JDBC_USERNAME=sonar
      - SONAR_JDBC_PASSWORD=sonar
      # 可选:管理员密码配置(首次启动有效)
      # - SONARQUBE_PASSWORD=your_new_admin_password
      # - SONARQUBE_TOKEN=your_admin_token
      # 可选:项目规则配置
      # - PROJECT_CODE=PROJ1
      # - PROJECT_RULES=+csharpsquid:S104;-typescript:S1301
    ports:
      - 9000:9000  # SonarQube Web界面端口
    depends_on:
      - db  # 依赖PostgreSQL服务

  db:
    image: postgres:15.3
    environment:
      - POSTGRES_USER=sonar        # 数据库用户名
      - POSTGRES_PASSWORD=sonar    # 数据库密码
      - POSTGRES_HOST_AUTH_METHOD=scram-sha-256  # 认证方式
      - POSTGRES_INITDB_ARGS=--auth-host=scram-sha-256  # 初始化参数
    volumes:
      - /db/postgresql_data:/var/lib/postgresql/data  # 数据持久化卷

关键环境变量说明

环境变量用途描述默认值
SONAR_JDBC_URLPostgreSQL数据库连接URL-
SONAR_JDBC_USERNAME数据库用户名-
SONAR_JDBC_PASSWORD数据库密码-
SONARQUBE_PASSWORD首次启动时用于修改默认admin密码-
SONARQUBE_TOKEN替代密码的管理员认证令牌-
DB_START_TIMEOUT等待数据库可用的超时时间(秒)60
SONAR_START_TIMEOUT等待SonarQube启动完成的超时时间(秒)600

启动流程说明

  1. 数据库依赖检查:启动脚本会等待PostgreSQL数据库可用(仅PostgreSQL环境)
  2. 管理员密码设置:若默认admin密码未修改且提供SONARQUBE_PASSWORD,自动更新管理员密码
  3. 质量配置文件生成:为支持语言创建默认质量配置文件
  4. 规则应用:根据PROJECT_CODEPROJECT_RULES应用项目级规则调整

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker加速体验非常流畅,大镜像也能快速完成下载。"