简而言之:有没有办法在SonarQube 使用的弹性搜索客户端中更改目标地址?
更多信息:我很想在 OpenShift 上使用 SonarQube > 4.1。不幸的是,您无法在该环境中绑定到 localhost。所以这些家伙将服务包装器更改为管道模式,并使用该sonar.web.host
属性来设置 SonarQube 4.0。从SonarQube 4.1开始,我们还将拥有尝试绑定到 localhost 的弹性搜索服务器,这会导致启动时崩溃。但是没有sonar.search.host
属性这样的东西(类似于sonar.search.port
),是吗?
sonar.search.javaAdditionalOpts
作为一种解决方法,可以使用和es.network.host
参数更改服务器的绑定。是的,我知道,我不应该这样做。因为现在应用程序崩溃了。这就是为什么我正在寻找一种方法来改变这一点。
查看SonarQubes 源代码NoNodeAvailableException
: No node available
,我假设客户端的目标地址是硬编码的。(虽然我可能弄错了)
我认为如果没有解决方案,我们永远不会在 OpenShift 或任何其他具有严格安全策略的环境上运行 SonarQube 5.0。
谁能想到另一种解决方法?
也许改变 Java 对“localhost”/loopback 接口的定义?然而,改变/etc/hosts
如果没有 root 访问权限,更改将不起作用。还有其他想法吗?
编辑:如果你想看看自己这里是我到目前为止走了多远。构建文件是必不可少的部分。