sonarqube的docker镜像可以使用env配置任何设置吗?

时间:2017-04-19 11:57:46

标签: java docker ldap sonarqube sonarqube-scan

我正在尝试使用LDAP配置此image

在文档中,他们认为您可以使用以下内容配置jdbc

  • SONARQUBE_JDBC_USERNAMEsonar.jdbc.username *
  • SONARQUBE_JDBC_PASSWORDsonar.jdbc.password *
  • SONARQUBE_JDBC_URLsonar.jdbc.url *

我想知道如何为LDAP做同样的事情。

是否可以通过其环境名称使用任何设置?

例如:SONAR_LOG_LEVEL=DEBUG

否则,容器内部有一个/opt/sonarqube/conf/sonar.properties 它在那里,我该如何开始编辑?

3 个答案:

答案 0 :(得分:1)

  

否则,容器内部有一个/opt/sonarqube/conf/sonar.properties就在那里,我该如何开始编辑?

不,通常您想要做的是将信息添加到docker-compose文件中。 特别是在关键“环境”下的YML文件中,您可以添加所需的任何变量。 这是docker-compose.yml文件的一个例子:

version: "3"
services:
  registry:
    image: registry:2
    ports:
      - 0.0.0.0:5000:5000
    environment:
      REGISTRY_STORAGE_FILESYSTEM_ROOTDIRECTORY: /data
      REGISTRY_STORAGE_DELETE_ENABLED: "true"
    volumes:
      - /data/reg:/var/lib/registry
    hostname: "myhost.registry"

使用compose文件使用自定义环境部署堆栈。

答案 1 :(得分:1)

我发现的解决方案是获取配置文件(sonar.properties),对其进行参数化并将其放置在docker-compose.yml中:

services:
  sonarqube:
    image: sonarqube
    ports:
      - "9000:9000"
    networks:
      - sonarnet
    environment:
      - sonar.jdbc.url=
    volumes:
      - sonarqube_conf:/opt/sonarqube/conf
      - sonarqube_data:/opt/sonarqube/data
      - sonarqube_extensions:/opt/sonarqube/extensions
      - ./sonar.properties:/opt/sonarqube/conf/sonar.properties

因此,配置文件的区域设置将放置在docker中。

希望对您有帮助

答案 2 :(得分:1)

另一种实现所需功能的方法是创建自己的sonar.properties文件,并将其与wrapper.properties一起复制到容器中。

在docker-compose.yml

volumes:
    - ./sonar-properties:/opt/sonarqube/conf