sonarqube scaner docker 扫描失败的原因及解决方案
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sonarqube scaner docker 扫描失败的原因及解决方案相关的知识,希望对你有一定的参考价值。
参考技术A 根源:scanner的container网络跟sonarqube server不在一个网络内解决:--network=host 参数
https://stackoverflow.com/questions/32097414/error-sonar-server-http-localhost9000-can-not-be-reached
根源: java中缺少sonar.java.binaries 必选参数
解决:使用 mvn compile 编译源码,并在sonar-project.properties中添加参数
其他语言请参考 https://docs.sonarqube.org/latest/analysis/languages/overview/ 获取必选参数信息。
根源: jvm默认配置太小,内存不足
解决:设置环境变量 SONAR_SCANNER_OPTS="-Xmx512m" 或者更大。
docker的解决方案为
根源:server 端ES 内存不足, 因为ES默认的heap size为2GB,而Docker的limit也是2GB。
解决:加大内存,docker Desktop端(Mac 与windows端)需要配置docker的最大内存超过4GB。或者限制ES的Heap size到750MB。
https://github.com/10up/wp-local-docker/issues/6#issue-211554733
根源:scanner无法在工程的根目录上找到sonar-project.properties文件,尽管该文件存在,但是docker -v挂在目录时不支持相对路径。
解决:将docker run -v...的运行脚本也放到工程根目录下,将当前目录挂载到/usr/src:
以上是关于sonarqube scaner docker 扫描失败的原因及解决方案的主要内容,如果未能解决你的问题,请参考以下文章