1

在 Mac 上安装 Docker 并尝试按照以下链接 https://docs.vespa.ai/documentation/vespa-quick-start.html中指定的步骤在 Docker 上运行 Vespa

在第 4 步之前我没有遇到任何问题。我看到 vespa 容器在第 2 步之后运行,第 3 步返回 200 OK 响应。

但是第 5 步未能返回 200 OK 响应。下面是我在终端 curl -s --head http://localhost:8080/ApplicationStatus上运行的命令

我不断得到

curl: (52) Empty reply from server每当我在没有 -s 选项的情况下运行时。

所以我试图查看我的 vespa 容器内的监听端口,但没有看到 8080 的任何内容,但可以看到 19071(在步骤 3 中使用)

➜  ~ docker exec vespa bash -c 'netstat -vatn| grep 8080'  

➜  ~ docker exec vespa bash -c 'netstat -vatn| grep 19071'

tcp        0      0 0.0.0.0:19071           0.0.0.0:*               LISTEN     

下面的文档包含与 vespa 端口相关的信息

https://docs.vespa.ai/documentation/reference/files-processes-and-ports.html

我假设端口 8080 在 docker run(快速启动链接的第 2 步)之后应该处于活动状态,并且可以在完成端口映射后在容器外部访问。但我首先没有看到容器内的 8080 端口处于活动状态。我是不是错过了什么。除了快速入门中提到的步骤之外,我是否需要执行任何其他步骤?仅供参考,我在 docker 中安装了 Jenkins,并且能够通过端口映射访问外部容器。但不知道为什么它不能与 vespa 一起使用。我一直在安静地尝试,但没有进展。如果我在这里遗漏了什么,请告诉我。

4

2 回答 2

4

You have too low memory for your docker container, "Minimum 6GB memory dedicated to Docker (the default is 2GB on Macs).". See https://docs.vespa.ai/documentation/vespa-quick-start.html

The deadlock detector warnings and failure to get configuration from configuration server (which is likely oom killed) indicates that you are too low on memory.

于 2018-12-10T09:46:22.487 回答
2

我的猜测是您的 jdisc 容器尚未完成初始化或未正确初始化?您是否尝试检查日志?

docker exec vespa bash -c '/opt/vespa/bin/vespa-logfmt /opt/vespa/logs/vespa/vespa.log'

这应该告诉您是否有问题。当它准备好接收请求时,您会看到如下内容:

[2018-12-10 06:30:37.854] INFO    : container        Container.org.eclipse.jetty.server.AbstractConnector   Started SearchServer@79afa369{HTTP/1.1,[http/1.1]}{0.0.0.0:8080}
[2018-12-10 06:30:37.857] INFO    : container        Container.org.eclipse.jetty.server.Server  Started @10280ms
[2018-12-10 06:30:37.857] INFO    : container        Container.com.yahoo.container.jdisc.ConfiguredApplication  Switching to the latest deployed set of configurations and components. Application switch number: 0
[2018-12-10 06:30:37.859] INFO    : container        Container.com.yahoo.container.jdisc.ConfiguredApplication  Initializing new set of configurations and components. Application switch number: 1
于 2018-12-10T06:44:01.440 回答