Невозможно установить прокси в SonarQube, работающем в OpenShift(OKD)

Я управляю сборкой sonarqube sonarqube-openshift-docker. Мне нужно настроить прокси, который использует Sonar, чтобы он мог добраться до Marketplace и развернуть профиль Java.

Я попытался установить развертывание пары имя / значение конфигурации env: JAVA_TOOLS_OPTIONS = "-Dhttp.proxyHost= -Dhttp.proxyPort= -Dhttps.proxyHost= -Dhttps.proxyPort="

Я также попытался установить пары имя / значение HTTP_PROXY_HOST, HTTP_PROXY_PORT, HTTPS_PROXY_HOST, HTTPS_PROXY_PORT.

Все это доходит до среды на стороне контейнера, но Сонар не использует их.

Изменение файла sonar.properties в контейнере не работает, так как он не является постоянным и запускается при перезапуске.

Я также попытался добавить это здесь, но это не сработало.

template:
metadata:
  annotations:
    openshift.io/container.sonarqube.image.entrypoint: '["./bin/run.sh -Dhttp.proxyHost=<myProxy:port>"]'

Я предполагаю, что мне нужно передать его где-нибудь в файле YAML, но я не могу понять, где.

2 ответа

AFAIK, вы должны предоставить хост и порт в отдельных свойствах:

http.proxyHost=
http.proxyPort=

Взгляните на файл sonar.properties здесь.

Запустив SonarQube в OpenShift, я использую шаблон, который удаляет конфигурацию HTTP-прокси с настройками ConfigMap.

apiVersion: v1
kind: Template
metadata:
  name: sonarqube-template
objects:
[...]
- apiVersion: v1
  kind: ConfigMap
  metadata:
    name: ${APPLICATION_NAME}-conf
  data:
    sonar.properties: |-
      http.nonProxyHosts=${PROXY_EXCLUDE}
      http.proxyHost=${PROXY_HOST}
      http.proxyPort=${PROXY_PORT}
      https.proxyHost=${PROXY_HOST}
      https.proxyPort=${PROXY_PORT}
    wrapper.conf: |-
      wrapper.java.command=java
      wrapper.java.additional.1=-Dsonar.wrapped=true
      wrapper.java.additional.2=-Djava.awt.headless=true
[...]
- apiVersion: v1
  kind: DeploymentConfig
[...]
         volumeMounts:
          - mountPath: /opt/sonarqube/conf
            name: ${APPLICATION_NAME}-conf
[....]
    volumes:
    - configMap:
        defaultMode: 420
        name: ${APPLICATION_NAME}-conf
[...]
parameters:
- name: APPLICATION_NAME
  value: sonarqube
- name: PROXY_HOST
  value: proxy.example.com
- name: PROXY_PORT
  value: "3128"
- name: PROXY_EXCLUDE
  value: "*.internal.domain.example.com"
Другие вопросы по тегам