我在Ubuntu上的docker上运行了一个ELK堆栈.有时,弹性搜索容器将由于错误的查询或错误消息而终止,这是我们开发环境中的预期行为.
我们遇到的问题是,在ES容器终止后,由于以下错误,无法重新启动Logstash容器:
Cannot link to a non running container: /elasticsearch AS /logstash/elasticsearch
Run Code Online (Sandbox Code Playgroud)
完整的命令列表是:
$ sudo docker stop logstash
$ sudo docker start elasticsearch
$ sudo docker start logstash
Cannot link to a non running container: /elasticsearch AS /logstash/elasticsearch
Run Code Online (Sandbox Code Playgroud)
我已经验证ES容器确实已经恢复,我可以通过curl连接到ES,但logstash容器将无法启动.
logstash容器配置了以下链接:
/elasticsearch:/logstash/elasticsearch
Run Code Online (Sandbox Code Playgroud)
Docker版本信息:
$ docker version
Client:
Version: 1.11.0
API version: 1.23
$docker --version
Docker version 1.11.0, build 4dc5990
Run Code Online (Sandbox Code Playgroud)
重新启动整个VM可以解决问题,并允许我正确地重新启动所有容器,一切都很好,直到ES再次终止.
虽然不是世界末日,但我真的宁愿避免重启来解决这个问题.
有任何想法吗?
| 归档时间: |
|
| 查看次数: |
13231 次 |
| 最近记录: |