2

我在 cloud9 工作区中运行的 Ubuntu 14 容器中安装了 solr-jetty 包。

要安装软件包,我运行以下命令:

sudo apt-get install solr-jetty

安装不会返回任何错误。然后我尝试使用以下命令启动 solr:

sudo service jetty start

但我收到以下错误:

 * Starting Jetty servlet engine. jetty
 * Jetty servlet engine started, reachable on http://host-solr-3694477:8983/. jetty
   ...fail!

在码头的日志文件中,我收到以下消息:

failed setting default capabilities.
set_caps(CAPS) failed for user 'jetty'
Service exit with a return value of 4

我该如何解决这个问题?

4

2 回答 2

2

Docker 用户在这里,同样的问题,但是 - 这对我有用(这与将用户更改为“root”一样不明智,如上所述):

https://docs.docker.com/engine/reference/run/#/runtime-privilege-and-linux-capabilities

创建容器时,在“docker run”命令上设置以下内容:

--特权=真

我只是在使用 docker 进行开发,所以还没有过度关注它的安全隐患。

于 2016-11-14T14:38:03.247 回答
2

为了解决这个问题,我不得不将运行 jetty 的用户从 jetty 更改为 root。这可以通过编辑/etc/default/jetty文件来配置。我认为这不是更正确的解决方案,因为它会增加安全问题。如果有人有更好的解决方案...

于 2016-08-31T14:20:32.503 回答