本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
arm64v8/sonarqube 是 SonarQube 官方 Docker 镜像的 arm64v8 架构版本,用于存储 SonarQube Server 和 SonarQube Community Build 的官方镜像。
SonarQube Server(前身为 SonarQube)是一款本地部署的代码分析工具,支持检测 30 多种语言、框架和 IaC 平台中的质量与安全问题,并通过 Sonar AI CodeFix 能力提供基于 AI 的修复建议。该工具可直接集成到 CI 流水线或主流 DevOps 平台,在每次合并/拉取请求时对代码进行全面检查,覆盖可维护性、可靠性、安全性等多维度指标。
SonarQube Community Build(前身为 SonarQube Community)是 Sonar 提供的免费自管理版本,每月更新,包含开源核心功能,支持 21 种编程语言和框架的基础 bug 检测、代码异味识别及安全问题分析。商业版本(SonarQube Server Developer、Enterprise、Data Center 版)则提供高级安全分析、企业级集成和可扩展性特性。
| 标签系列 | Dockerfile 链接 |
|---|---|
2025.5.0-developer, 2025.5-developer, developer | 链接 |
2025.5.0-enterprise, 2025.5-enterprise, enterprise | 链接 |
2025.5.0-datacenter-app, 2025.5-datacenter-app, datacenter-app | 链接 |
2025.5.0-datacenter-search, 2025.5-datacenter-search, datacenter-search | 链接 |
2025.4.3-developer, 2025.4-developer | 链接 |
2025.4.3-enterprise, 2025.4-enterprise | 链接 |
2025.4.3-datacenter-app, 2025.4-datacenter-app | 链接 |
2025.4.3-datacenter-search, 2025.4-datacenter-search | 链接 |
2025.1.4-developer, 2025.1-developer, 2025-lta-developer | 链接 |
2025.1.4-enterprise, 2025.1-enterprise, 2025-lta-enterprise | 链接 |
2025.1.4-datacenter-app, 2025.1-datacenter-app, 2025-lta-datacenter-app | 链接 |
2025.1.4-datacenter-search, 2025.1-datacenter-search, 2025-lta-datacenter-search | 链接 |
25.10.0.114319-community, community, latest | 链接 |
SonarQube 依赖嵌入式 Elasticsearch,Docker 主机需满足以下配置(以 Linux 为例):
# 设置虚拟内存映射数 sysctl -w vm.max_map_count=524288 # 设置文件描述符上限 sysctl -w fs.file-max=131072 # 设置当前会话的文件描述符限制 ulimit -n 131072 # 设置用户进程数限制 ulimit -u 8192
通过以下命令启动社区版演示实例(仅用于测试,不建议生产环境):
docker run --name sonarqube-demo -p 9000:9000 arm64v8/sonarqube:community
访问 http://localhost:9000,默认账号密码:admin/admin。
推荐使用外部数据库(如 PostgreSQL)存储数据,避免嵌入式 H2 数据库的局限性。以下示例使用 PostgreSQL 并挂载数据卷:
# 创建数据卷 docker volume create sonarqube_data docker volume create sonarqube_logs docker volume create sonarqube_extensions # 启动 SonarQube(需先启动 PostgreSQL 并配置环境变量) docker run -d \ --name sonarqube \ -p 9000:9000 \ -e SONAR_JDBC_URL=jdbc:postgresql://<postgresql-host>:5432/sonarqube \ -e SONAR_JDBC_USERNAME=<db-username> \ -e SONAR_JDBC_PASSWORD=<db-password> \ -v sonarqube_data:/opt/sonarqube/data \ -v sonarqube_logs:/opt/sonarqube/logs \ -v sonarqube_extensions:/opt/sonarqube/extensions \ --stop-timeout 3600 \ # 允许1小时优雅关闭(等待任务完成) arm64v8/sonarqube:community
创建 docker-compose.yml 文件,集成 SonarQube 和 PostgreSQL:
version: '3.8' services: sonarqube: image: arm64v8/sonarqube:community container_name: sonarqube ports: - "9000:9000" environment: - SONAR_JDBC_URL=jdbc:postgresql://db:5432/sonarqube - SONAR_JDBC_USERNAME=sonar - SONAR_JDBC_PASSWORD=sonar_password volumes: - sonarqube_data:/opt/sonarqube/data - sonarqube_logs:/opt/sonarqube/logs - sonarqube_extensions:/opt/sonarqube/extensions depends_on: - db stop_grace_period: 1h # 优雅关闭超时时间 db: image: arm64v8/postgres:14 container_name: sonarqube_db environment: - POSTGRES_USER=sonar - POSTGRES_PASSWORD=sonar_password - POSTGRES_DB=sonarqube volumes: - postgres_data:/var/lib/postgresql/data volumes: sonarqube_data: sonarqube_logs: sonarqube_extensions: postgres_data:
启动服务:
docker-compose up -d
默认端口为 9000,通过 -p <host-port>:9000 映射到主机端口。
常用环境变量用于配置数据库连接及服务参数:
| 环境变量 | 说明 | 示例 |
|---|---|---|
SONAR_JDBC_URL | 数据库连接 URL | jdbc:postgresql://db:5432/sonarqube |
SONAR_JDBC_USERNAME | 数据库用户名 | sonar |
SONAR_JDBC_PASSWORD | 数据库密码 | sonar_password |
SONAR_WEB_JAVAOPTS | Web 进程 JVM 参数 | -Xmx1G -Xms1G |
推荐挂载以下目录以持久化数据和配置:
/opt/sonarqube/data:存储数据库数据、Elasticsearch 索引等/opt/sonarqube/logs:服务日志/opt/sonarqube/extensions:第三方插件通过 Dockerfile 构建包含自定义插件的镜像:
FROM arm64v8/sonarqube:community # 复制自定义插件到扩展目录 COPY sonar-custom-plugin-1.0.jar /opt/sonarqube/extensions/plugins/
构建并运行:
docker build -t sonarqube-custom . docker run -d --name sonarqube-custom -p 9000:9000 sonarqube-custom
SonarQube 需等待进行中的任务完成后优雅关闭,默认 Docker 10 秒超时可能导致进程被强制终止。通过 --stop-timeout 或 stop_grace_period(Docker Compose)设置超时:
# 允许1小时优雅关闭 docker run --stop-timeout 3600 arm64v8/sonarqube:community
升级需遵循官方指南,确保数据兼容性。详细步骤参考 从 Docker 镜像升级 SonarQube。
SonarQube 实例管理文档参见 官方管理指南。
镜像中包含的其他软件可能受不同许可证约束,用户需自行确保合规使用。

免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429