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

到步骤4为止,我没有任何问题。我看到在步骤2和步骤3之后运行的vespa容器返回了200 OK响应。

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

我不断



因此,我尝试查看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步)之后处于 Activity 状态,并且可以在端口映射完成后在容器外部进行访问。
但是我首先没有看到8080端口在容器内部处于 Activity 状态。
我错过了什么吗?除了快速入门中所述,我是否需要执行其他任何步骤?仅供参考,我在docker内部安装了Jenkins,并能够通过端口映射访问外部容器。但是不确定为什么它不能与vespa一起使用。我一直在安静地尝试,但没有任何进展。如果我在这里缺少什么,请告诉我。

最佳答案

您的Docker容器的内存太低,“专用于Docker的最小6GB内存(在Mac上默认为2GB)。”。参见https://docs.vespa.ai/documentation/vespa-quick-start.html

死锁检测器警告和无法从配置服务器获取配置(可能已被oom杀死)表明您的内存太低。

09-05 09:29