
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
该镜像为Concourse CI提供SonarQube资源,用于执行代码质量分析并跟踪SonarQube质量门状态,支持SonarCloud和自托管的SonarQube实例。若需在构建流水线中实现质量门控制,可结合https://github.com/cathive/concourse-sonarqube-qualitygate-task%E4%BD%BF%E7%94%A8%EF%BC%8C%E5%BD%93%E4%BB%A3%E7%A0%81%E6%9C%AA%E8%BE%BE%E5%88%B0%E8%B4%A8%E9%87%8F%E7%9B%AE%E6%A0%87%E6%97%B6%E4%B8%AD%E6%96%AD%E6%9E%84%E5%BB%BA%E3%80%82
conf/sonar.properties中的sonar.core.serverBaseURL)在Concourse CI流水线中添加资源类型:
yamlresource_types: - name: sonar-runner type: docker-image source: repository: cathive/concourse-sonarqube-resource tag: latest # 为保证构建可复现,建议使用特定版本标签而非"latest"
host_url: 必填。SonarQube实例地址,如SonarCloud使用"[***]"(需以斜杠结尾)。organization: SonarCloud分析代码时必填的组织名称。login: 具有执行分析权限的SonarQube用户登录名或认证令牌,无需认证时可留空。password: 与login对应的密码,使用认证令牌时留空。maven_settings: Maven分析时使用的配置,仅在scanner_type为Maven时生效。__debug: 开启调试模式(输出额外日志,生产环境不建议开启,避免泄露敏感信息)。该资源实现check、in、out三个动作:
out: 触发SonarQube分析check/in: 等待分析结果并获取项目状态,供任务判断是否中断构建参数
project_path: 必填。待分析资源的路径,若包含sonar-project.properties将自动读取。scanner_type: 扫描器类型(auto默认:存在pom.xml则用Maven,否则用CLI;cli强制CLI;maven强制Maven)。project_key: 项目键(默认从sonar-project.properties读取)。project_key_file: 读取项目键的文件路径(优先级高于project_key)。project_name: 项目名称(默认从配置文件读取)。project_description: 项目描述(默认从配置文件读取)。project_version: 项目版本(默认从配置文件读取)。project_version_file: 读取项目版本的文件路径(优先级高于project_version)。autodetect_branch_name: 自动检测分支(仅支持Git)。branch_name: 分支名称(覆盖自动检测)。branch_target: 目标合并分支(默认master)。decorate_pr: 开启PR装饰(需SonarCloud或Developer版支持)。sources: 源代码目录列表。tests: 测试代码目录列表。additional_properties: 额外分析参数(如覆盖率报告路径)。additional_properties_file: 额外参数文件路径。maven_settings_file: Maven配置文件路径(覆盖资源级maven_settings)。sonar_maven_plugin_version: Maven插件版本(默认使用最新)。通配符支持
以下字段支持通配符转逗号分隔路径:
sourcestestsadditional_properties中后缀为.reportPaths的键该动作会生成两个JSON文件:
qualitygate_project_status.json: 质量门状态(格式参考API文档)ce_task_info.json: 分析任务信息(格式参考API文档)参数
quality_gate: 可选,控制get步骤的成功/失败:
ignore_all_warn: 忽略所有WARN级指标ignore_all_error: 忽略所有ERROR级指标ignore_warns: 忽略指定WARN级指标的键列表ignore_errors: 忽略指定ERROR级指标的键列表以下流水线示例展示如何使用该资源实现质量门控制:
yamlresource_types: - name: sonar-runner type: docker-image source: repository: cathive/concourse-sonarqube-resource tag: latest resources: - name: sources type: git source: uri: https://github.com/example/example.git - name: artifact type: s3 # ... 配置省略 - name: code-analysis type: sonar-runner source: host_url: [***] login: ((sonarqube-auth-token)) jobs: - name: build-and-analyze plan: - get: sources trigger: true - task: build config: platform: linux image_resource: type: docker-image source: repository: debian tag: 'jessie' inputs: - name: sources outputs: - name: sonarqube-analysis-input run: path: build.sh dir: sources - in_parallel: - put: code-analysis params: project_path: sonarqube-analysis-input project_key: com.example.my_project sources: ["."] tests: ["."] additional_properties: sonar.javascript.lcov.reportPaths: coverage/lcov.info get_params: quality_gate: ignore_errors: ['new_coverage', 'violations'] ignore_warns: ['new_duplicated_lines_density', 'violations'] - put: artifact - name: qualitygate plan: - in_parallel: - get: artifact passed: [build-and-analyze] - get: code-analysis passed: [build-and-analyze] trigger: true - task: check-sonarqube-quality-gate config: platform: linux image_resource: type: docker-image source: repository: cathive/concourse-sonarqube-qualitygate-task tag: latest inputs: - name: code-analysis run: path: /sonarqube-qualitygate-check dir: code-analysis - name: deploy plan: - get: artifact passed: [qualitygate]
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务