
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
用于SonarQube的Docker镜像,由CNES预配置插件和设置,专用于持续集成。
该镜像是基于https://github.com/cnescatlab/docker-cat%E8%A1%8D%E7%94%9F%E7%9A%84%E9%A2%84%E9%85%8D%E7%BD%AESonarQube%E6%9C%8D%E5%8A%A1%E5%99%A8%E9%95%9C%E5%83%8F%EF%BC%8C%E5%8C%85%E5%90%AB%E7%9B%B8%E5%90%8C%E7%9A%84%E6%8F%92%E4%BB%B6%E5%92%8C%E4%BB%A3%E7%A0%81%E5%88%86%E6%9E%90%E8%A7%84%E5%88%99%EF%BC%8C%E5%9F%BA%E4%BA%8ESonarQube%E7%9A%84LTS%E7%89%88%E6%9C%AC%E6%9E%84%E5%BB%BA%E3%80%82
SonarQube本身是GitHub上的开源项目:https://github.com/SonarSource/sonarqube%E3%80%82
版本和变更日志请参见:https://github.com/cnescatlab/sonarqube/releases%E3%80%82
该镜像基于官方SonarQube LTS镜像(即https://hub.docker.com/_/sonarqube%EF%BC%89%E6%9E%84%E5%BB%BA%EF%BC%8C%E5%B9%B6%E6%8F%90%E4%BE%9B%E4%BB%A5%E4%B8%8B%E9%A2%9D%E5%A4%96%E5%8A%9F%E8%83%BD%EF%BC%9A
此镜像旨在与预配置的sonar-scanner镜像配合使用,后者嵌入了所有必要工具:https://github.com/cnescatlab/sonar-scanner%E3%80%82%E4%BD%86%E5%B9%B6%E9%9D%9E%E5%BF%85%E9%A1%BB%E4%BD%BF%E7%94%A8%E8%AF%A5%E6%89%AB%E6%8F%8F%E5%99%A8%E3%80%82
这是一个标准Docker镜像,可通过以下命令构建:
sh# 从项目根目录执行 $ docker build -t lequal/sonarqube .
运行此镜像的容器方法参见用户指南。
运行测试及创建自定义测试请参见https://github.com/cnescatlab/sonar-scanner/tree/develop/tests%E3%80%82
该镜像已发布至Docker Hub:https://hub.docker.com/r/lequal/sonarqube/%E3%80%82
自创建以来,此镜像即设计用于生产环境,因此绝不容许保留默认admin密码(即"admin")。必须通过设置环境变量SONARQUBE_ADMIN_PASSWORD指定admin账户的新密码。
:warning: :rotating_light: 若SONARQUBE_ADMIN_PASSWORD为空或等于"admin",容器将启动失败。
sh# 推荐选项 $ docker run --name lequalsonarqube \ --rm \ -p 9000:9000 \ -e SONARQUBE_ADMIN_PASSWORD="自定义的admin密码" \ lequal/sonarqube:latest # 停止(并移除)容器 Ctrl-C # 或 $ docker container stop lequalsonarqube
默认情况下,SonarQube使用嵌入式数据库,仅适用于测试环境;生产环境必须使用外部数据库以确保数据持久化。docker-compose.yml文件展示了配置外部PostgreSQL数据库的示例,可通过以下命令运行:
sh$ docker-compose up -d # 运行容器时设置变量 $ LEQUAL_SONARQUBE_VERSION=1.0.0 POSTGRES_PASSWD=secret-passwd SONARQUBE_ADMIN_PASSWORD="密码" docker-compose up -d
使用外部数据库时,SonarQube的数据存储在容器外部,因此容器可随意停止、重启、移除和重建。
| SonarQube 插件 | 版本 | URL |
|---|---|---|
| C# 代码质量与安全 | 10.10.1 (build ***) | http://redirect.sonarsource.com/plugins/csharp.html |
| C++(社区版) | 2.2.1 (build 1248) | https://github.com/SonarOpenCommunity/sonar-cxx/wiki |
| Checkstyle | 10.23.0 | n/a |
| 边写边清理(Clean as You Code) | 2.4 (build 2018) | http://docs.sonarqube.org/display/PLUG/Plugin+Library/sonar-cayc-plugin |
| 社区分支插件(Community Branch Plugin) | 25.6.0 | https://github.com/mc1arke/sonarqube-community-branch-plugin |
| Findbugs | 4.5.1 | https://github.com/spotbugs/sonar-findbugs/ |
| Flex 代码质量与安全 | 2.14 (build 5032) | http://redirect.sonarsource.com/plugins/flex.html |
| Go 代码质量与安全 | 1.23.1.2838 | http://redirect.sonarsource.com/plugins/go.html |
| HTML 代码质量与安全 | 3.19 (build 5695) | http://redirect.sonarsource.com/plugins/web.html |
| IaC 代码质量与安全 | 1.47.0.*** | http://docs.sonarqube.org/display/PLUG/Plugin+Library/iac/sonar-iac-plugin |
| JaCoCo | 1.3.0 (build 1538) | n/a |
| Java 高级代码质量分析器 | 8.14.1 (build 39293) | http://redirect.sonarsource.com/plugins/java.html/java-se/sonar-java-symbol |
| Java 代码质量与安全 | 8.14.1 (build 39293) | http://redirect.sonarsource.com/plugins/java.html |
| JavaScript/TypeScript/CSS 代码质量与安全 | 10.23 (build 32711) | http://redirect.sonarsource.com/plugins/javascript.html |
| Kotlin 代码质量与安全 | 3.2.0 (build 7239) | https://redirect.sonarsource.com/plugins/kotlin.html |
| PHP 代码质量与安全 | 3.46.0.*** | [***] |
| PMD | 4.0.3 | https://github.com/jborgers/sonar-pmd |
| Python 代码质量与安全 | 5.4 (build 22255) | http://redirect.sonarsource.com/plugins/python.html |
| Ruby 代码质量与安全 | 1.19.0 (build 471) | http://redirect.sonarsource.com/plugins/ruby.html |
| Rust 代码质量与安全 | 1.0.3.786 | n/a |
| Scala 代码质量与安全 | 1.19.0 (build 484) | http://redirect.sonarsource.com/plugins/scala.html |
| Sonar i-Code CNES 插件 | 5.2.0 | https://github.com/cnescatlab/sonar-icode-cnes-plugin |
| SonarQube CNES 报告 | 5.0.2 | https://github.com/cnescatlab/sonar-cnes-report |
| 文本代码质量与安全 | 2.24.1.6530 | [***] |
| VB.NET 代码质量与安全 | 10.10.1 (build ***) | http://redirect.sonarsource.com/plugins/vbnet.html |
| XML 代码质量与安全 | 2.13 (build 5938) | http://redirect.sonarsource.com/plugins/xml.html |
| YAML 分析器 | 1.9.1 | https://github.com/sbaudoin/sonar-yaml |
要更新此列表,请运行以下脚本:
shwhile IFS='|' read -r plugin version url do if [ "$url" = "null" ]; then url="n/a"; fi printf "| %.60s| %.25s| %.75s|\n" "$plugin " "$version " "$url " done < <(curl -u MY_TOKEN: -s http://localhost:9000/api/plugins/installed | jq -r '.plugins[] | "\(.name)|\(.version)|\(.homepageUrl)"') # 其中 `MY_TOKEN` 是你的SonarQube个人令牌
建议在http://localhost:9000/admin/settings%E4%B8%AD%E8%AE%BE%E7%BD%AE%E5%B1%9E%E6%80%A7%60sonar.core.serverBaseURL%60%EF%BC%8C%E4%BB%A5%E7%A1%AE%E4%BF%9DPR%E8%AF%84%E8%AE%BA%E5%92%8C%E9%82%AE%E4%BB%B6%E4%B8%AD%E7%9A%84%E9%93%BE%E6%8E%A5%E6%AD%A3%E5%B8%B8%E5%B7%A5%E4%BD%9C%E3%80%82
如遇镜像问题,请提交issue,说明复现步骤并粘贴日志。
如需提交PR,请说明PR的原因;若修复了某个issue,请注明issue编号或在PR中说明复现步骤。
详细信息参见https://github.com/cnescatlab/.github/blob/master/CONTRIBUTING.md%E3%80%82
Bug报告和功能请求:https://github.com/cnescatlab/sonar-scanner/issues
要贡献项目,请阅读https://github.com/cnescatlab/.github/wiki/CATLab's-Workflows%E3%80%82
基于https://www.gnu.org/licenses/gpl.txt%E6%8E%88%E6%9D%83
本项目是自由软件;您可以根据自由软件基金会发布的GNU通用公共许可证第3版(或任何更高版本)的条款重新分发和/或修改它。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务
以下是 lequal/sonarqube 相关的常用 Docker 镜像,适用于 不同场景 等不同场景: