通过docker image运行声纳扫描仪时出错

问题描述

我在Mac上通过docker安装了声纳扫描仪

({https://hub.docker.com/r/sonarsource/sonar-scanner-cli),我收到错误消息“您必须为'UnkNown'定义以下必需属性:sonar.projectKey”。

我已经执行以下操作:

1:在JS项目的根目录中添加一个sonar-scanner.properties文件

    Text::make(__('Package'),'size')
->default(function(){

//need to load value of current model resource "size" to inform user

        })
        ->readonly(),Number::make(__('Amount'),'amount')
        ->sortable()
        ->min(1) // -> i need to change this based on "size" form model resource
        ->max(9999)
        ->step(1) // -> i need to change this based on "size" form model resource
        ->updateRules('nullable')
        ->rules('required','number')
        ->help(__('in kilograms')),

2已安装docker和扫描器

这是我的docker命令

docker run --rm -e SONAR_HOST_URL =“ https://sonarqube.comp.com/” -e SONAR.PROJECTKEY =“ my-app” -v“ / git / franchises” sonarsource / sonar-scanner-cli

请让我知道如何正确传递信息。

谢谢

解决方法

将SonarQube Server作为Docker映像运行:

  • \$ docker pull sonarqube:7.9.4-community
  • \$ docker run -d --name sonarqube -e SONAR_ES_BOOTSTRAP_CHECKS_DISABLE=true -p 9000:9000 sonarqube:7.9.4-community
  • 登录到http:// localhost:9000(登录名= admin,密码= admin)
  • (确保-sonarqube服务器正在localhost:9000上运行)

以Docker映像运行SonarScanner:

  • \$ docker pull newtmitch/sonar-scanner:4-alpine
  • 转到项目的根目录
  • \ $ docker run -it -v $ {pwd):/ usr / src --link sonarqube:7.9.4-community newtmitch / sonar-scanner:4-alpine
    -D sonar.host.url = http:// sonarqube:9000
    -D sonar.scm.provider = git
    -D sonar.projectBaseDir =。/ src
    -D sonar.sources =。
    -D sonar.projectName ='测试项目'
  • (注意:以上我假设您的源代码位于src文件夹内,否则请进行相应更改)
  • 转到http:// localhost:9000现在,您将看到一个新项目-“ Test-Project”,它已完全分析了您从根目录运行的源代码。
  • 文档click

使用“ sonarqube-scanner”软件包(替代SonarScanner,特定于js / ts语言):

  • \$ npm i -D sonarqube-scanner

  • 在package.json中添加一个新脚本:"sonar": "node sonar-project.js"

  • 在您的根目录中添加文件: sonar-project.js

  • 在sonar-project.js中复制以下代码:

     const sonarqubeScanner = require('sonarqube-scanner');
     sonarqubeScanner({
     serverUrl: 'http://localhost:9000',options: {
       'sonar.sources': 'src','sonar.tests': 'src','sonar.inclusions': 'src/**/*.ts',// Entry point of your code
       'sonar.test.inclusions': 'src/**/*.spec.ts,src/**/*.spec.jsx',},() => {
     console.log('Error Occurred while scanning');                    
     });
    
  • \$ npm run sonar

  • 文档click