在 ubuntu 14 中启动码头失败

Posted

技术标签:

【中文标题】在 ubuntu 14 中启动码头失败【英文标题】:Starting jetty fail in ubuntu 14 【发布时间】:2017-01-05 17:28:30 【问题描述】:

我在 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

我该如何解决这个问题?

【问题讨论】:

这对于 serverfault.com 来说似乎是一个更好的问题 您是否尝试过安装包含旋转日志的apache2-utils @MatsLindh 问题不在旋转日志中:未找到。我已经更正了应用此修复程序的问题:osdir.com/ml/ubuntu-bugs/2016-06/msg16756.html。纠正这个“......失败!”消息仍然存在。 【参考方案1】:

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

【讨论】:

【参考方案2】:

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

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

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

--privileged=true

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

【讨论】:

以上是关于在 ubuntu 14 中启动码头失败的主要内容,如果未能解决你的问题,请参考以下文章

Ubuntu 16.04 安装 ElasticSearch 5.x,启动失败

在没有 maven 的情况下启动码头的可执行战争文件

Tomcat7 绑定到端口 80 在 Ubuntu 14.04LTS 中失败

sh Ubuntu 14码头设置

码头工人在 scaleway 上的暴发户

Android ADB 无法在 ubuntu 14.04 LTS 上启动或无法在模拟器中启动 AVD