4

我已经使用“apt-get install sonar”在 Ubuntu 主机上安装了 Sonar。由于这只是 Sonar 的演示实例供我使用,因此我使用的是嵌入式 H2 数据库。

声纳似乎启动良好,而且我的 sonar.log 中没有任何错误或警告。然而,当我尝试通过我的网络浏览器点击它时,我得到了“糟糕!谷歌浏览器无法连接到...... blahblahblah”。

主机实际上是一个 EC2 实例 - 不确定这是否会有所不同。它具有 Amazon 分配的私有 IP、一个 URL(即 ec2-xx-xx...amazonaws.com)和一个虚 URL,因此我不必记住那个可怕的底层 URL。

现在,Sonar 的属性看起来像这样。(我故意在 IP 地址出现的任何地方用 X 删除它。)

sonar.web.host:                           10.xxx.xx.xxx
sonar.web.port:                           9000
sonar.web.context:                        /
...
sonar.jdbc.url:                            jdbc:h2:tcp://10.xxx.xx.xxx:9092/sonar
sonar.jdbc.driverClassName:                org.h2.Driver
sonar.embeddedDatabase.port:               9092

我无法通过将浏览器指向 ${monstrous_URL}:9000 或 ${vanity URL}:9000 来访问它。我还尝试将 sonar.web.host 设置为 0.0.0.0 和 ${monstrous_URL} - 遗憾的是,两者都无济于事。

作为参考,这就是我的 sonar.log 的样子:

STATUS | wrapper  | 2013/03/13 20:21:42 | --> Wrapper Started as Daemon
STATUS | wrapper  | 2013/03/13 20:21:43 | Launching a JVM...
INFO   | jvm 1    | 2013/03/13 20:21:43 | Wrapper (Version 3.2.3) http://wrapper.tanukisoftware.org
INFO   | jvm 1    | 2013/03/13 20:21:43 |   Copyright 1999-2006 Tanuki Software, Inc.  All Rights Reserved.
INFO   | jvm 1    | 2013/03/13 20:21:43 |
INFO   | jvm 1    | 2013/03/13 20:21:43 | 2013-03-13 20:21:43.422:INFO::Logging to org.sonar.application.FilteredLogger@7dc6a657 via org.sonar.application.FilteredLogger
INFO   | jvm 1    | 2013/03/13 20:21:43 | 2013-03-13 20:21:43.484:INFO::jetty-6.1.25
INFO   | jvm 1    | 2013/03/13 20:21:43 | 2013-03-13 20:21:43.756:INFO::NO JSP Support for /, did not find org.apache.jasper.servlet.JspServlet
2013.03.13 20:21:44 INFO  o.s.s.p.ServerImpl  Sonar Server / 3.4.1 / 2f6a7f38e57ec8e9a7bedc81b3260ae735d2a8c8
2013.03.13 20:21:45 INFO  o.s.s.d.EmbeddedDatabase  Starting embedded database on port 9092 with url jdbc:h2:tcp://10.xxx.xx.xxx:9092/sonar
2013.03.13 20:21:45 INFO  o.s.s.d.EmbeddedDatabase  Embedded database started. Data stored in: /opt/sonar/data
2013.03.13 20:21:45 WARN  o.s.c.p.DefaultDatabase  H2 database should be used for evaluation purpose only
2013.03.13 20:21:45 INFO  o.s.c.p.Database  Create JDBC datasource for jdbc:h2:tcp://10.xxx.xx.xxx:9092/sonar
2013.03.13 20:21:47 INFO  o.s.s.p.DefaultServerFileSystem  Sonar home: /opt/sonar
2013.03.13 20:21:47 INFO  o.s.s.p.DefaultServerFileSystem  Deploy dir: /opt/sonar/war/sonar-server/deploy
2013.03.13 20:21:47 INFO  org.sonar.INFO  Install plugins...
2013.03.13 20:21:47 INFO  o.s.s.p.PluginDeployer  Deploy plugin Findbugs / 1.1 / 4785d335df6bd0e662d636a6fb03d79fbdda8c5a
2013.03.13 20:21:47 INFO  o.s.s.p.PluginDeployer  Deploy plugin JaCoCo / 1.1 / 4785d335df6bd0e662d636a6fb03d79fbdda8c5a

有没有人有在 EC2 实例上运行 Sonar 的经验,或者对我有什么建议?我难住了!

4

2 回答 2

4

And I'm unable to access it by pointing my browser to ${monstrous_URL}:9000 or ${vanity URL}:9000.

Change the security group attached to the EC2 instance to allow incoming connections to TCP port 9000.

于 2013-03-13T20:44:55.097 回答
1

使用以下输入作为声纳将 H2 数据库更改为 mysql。

jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.jdbc.driverClassName= com.mysql.jdbc.Driver
sonar.jdbc.validationQuery= select 1

并在 sonar.properties 中进行以下更改:

sonar.web.host:                           0.0.0.0
sonar.web.context:                        /sonar
于 2016-09-08T06:18:56.590 回答