Docker容器不断重启

时间:2016-08-02 08:54:26

标签: docker

我在尝试牧场主。 我使用了命令:     sudo docker run -d --restart = always -p 8080:8080 rancher / server 开始运行它。 然后我停下了容器并将其取下。但是,如果我停止并重新启动docker守护程序或重启我的笔记本电脑,并使用docker ps命令查找正在运行的容器,它将再次运行rancher服务器。如何完全停止/删除它并确保它不会再次运行。

3 个答案:

答案 0 :(得分:17)

注意:关注issue 11008PR 15348commit fd8b25c,docker v1.11.2),您可以避免以下问题:

sudo docker run -d --restart=unless-stopped -p 8080:8080 rancher/server

在您目前的情况下,感谢PR 19116,您可以使用docker update更新重启政策。

docker update --restart=unless-stopped <yourContainerID_or_Name>

然后停止容器,重新启动docker守护程序:它不会重启所述容器。

OP codefire指向另一个原因in the comments

  

当我第一次运行start rancher server命令时,我没有注意到它正在被下载。所以我可能已经重试了那个命令几次。

     

这就是为什么即使在停止并删除作为牧场服务器启动的容器之后,该作业仍会继续重新启动   停止并移除8个以上的容器后,它终于停止了

这就是为什么我有aliases to quickly remove any stopped containers

答案 1 :(得分:2)

它会不断重启,因为您使用的是--restart = always标志

运行

docker logs <CONTAINER_ID>

查看您的代码是否遇到任何不允许容器正常运行的错误

答案 2 :(得分:-1)

如果你没有将数据保存在外部卷中,如果关闭/杀死docker damen然后docker stop并且在docker容器内部删除数据,那么Doc​​ker会在你的locahost中运行。

docker run -d nginxlogs:/ var / log / nginx -p 5000:80 nginx