Docker无法链接到未运行的容器-已通过重新启动修复
我在Ubuntu的docker上运行了一个麋鹿堆栈。有时,elasticsearch容器会因为我们开发环境中预期的错误查询或错误消息而终止 我们遇到的问题是,ES容器终止后,由于以下错误,无法重新启动Logstash容器:Docker无法链接到未运行的容器-已通过重新启动修复,docker,Docker,我在Ubuntu的docker上运行了一个麋鹿堆栈。有时,elasticsearch容器会因为我们开发环境中预期的错误查询或错误消息而终止 我们遇到的问题是,ES容器终止后,由于以下错误,无法重新启动Logstash容器: Cannot link to a non running container: /elasticsearch AS /logstash/elasticsearch 命令的完整列表包括: $ sudo docker stop logstash $ sudo docker st
Cannot link to a non running container: /elasticsearch AS /logstash/elasticsearch
命令的完整列表包括:
$ sudo docker stop logstash
$ sudo docker start elasticsearch
$ sudo docker start logstash
Cannot link to a non running container: /elasticsearch AS /logstash/elasticsearch
我已经验证了ES容器确实会返回,并且我可以通过curl连接到ES,但是logstash容器不会启动
logstash容器配置有以下链接:
/elasticsearch:/logstash/elasticsearch
Docker版本信息:
$ docker version
Client:
Version: 1.11.0
API version: 1.23
$docker --version
Docker version 1.11.0, build 4dc5990
重新启动整个VM可以解决问题,并允许我正确地重新启动所有容器,一切正常,直到ES再次终止
虽然不是世界末日,但我真的宁愿避免重新启动来解决这个问题
有什么想法吗?我有时也会这样,上次是今天。只需运行
sudo服务docker重启
(或类似命令,具体取决于您的操作系统)您对docker compose有何看法?较新的版本将所有容器集中在一个网络上,而不声明链接,因此您应该能够避免此问题,并使用“depens_on:”设置容器的开始顺序。我曾经在链接上遇到过类似的问题,我会把头发拔出来。。。否则,试着移除过去曾经帮助过我的容器(如果周围有旧的容器的话)。。。