在 docker 容器内运行的 SonarScanner 无法访问源代码

hel*_*eck 5 docker sonarqube sonarqube-scan docker-container sonarscanner

我正在尝试使用在 Docker、操作系统:Windows 上本地运行的 SonarQube 和 SonarScanner 扫描某些项目的源代码。

通过在终端中提供下一个命令,我尝试使用 SonarScanner 运行容器,它应该扫描当前目录中的代码(SonarQube 实例在后台运行):

docker run \
    --rm \
    --network=host \
    -e SONAR_HOST_URL="http://127.0.0.1:9000/" \
    -e SONAR_LOGIN="...some token..." \
    -v $PWD:/usr/src sonarsource/sonar-scanner-cli \
    -Dsonar.projectKey=some-project-name
Run Code Online (Sandbox Code Playgroud)

之后,我收到“执行成功”消息,但 SonarQube 在“代码”选项卡中显示“未找到用于分析的代码文件”(统计信息也为空)。

我尝试添加-Dsonar.sources=some_subdirectory_which_exists_in_the_current_directory参数,这会导致“执行失败”消息和“基本目录中不存在该文件夹”消息。所以我认为容器只是无权访问项目文件,或者由于某种原因它不复制它们。