簡體   English   中英

Docker 容器不斷重啟

[英]Docker container keeps restarting

我正在嘗試牧場主。 我使用命令: sudo docker run -d --restart=always -p 8080:8080 rancher/server 開始運行它。 然后我停止了容器並將其移除。 但是,如果我停止並重新啟動 docker 守護程序或重新啟動我的筆記本電腦,並使用 docker ps 命令查找正在運行的容器,它將再次運行 Rancher 服務器。 如何完全停止/刪除它並確保它不會再次運行。

注意:在問題 11008PR 15348提交 fd8b25cdocker v1.11.2)之后,您可以通過以下方式避免該問題:

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

在您目前的情況下,感謝PR 19116 ,您可以使用docker docker update來更新重啟策略。

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

然后停止你的容器,重啟你的 docker 守護進程:它不會重啟所述容器。


OP codefire 在評論中指出了另一個原因:

當我第一次運行 start rancher server 命令時,我沒有注意到它正在被下載。 所以我可能已經重試了幾次該命令。

這一定是為什么即使在停止和刪除作為 Rancher 服務器啟動的容器后,作業仍會繼續重新啟動的原因。
停止並移除 8+ 個容器后,它終於停止了

這就是為什么我有別名來快速刪除任何停止的容器

它不斷重新啟動,因為您正在使用--restart=always標志

運行

docker logs <CONTAINER_ID>

查看您的代碼是否遇到任何不允許容器正常運行的錯誤

這些解決方案是正確的。 但對我來說,有一種情況是這些答案沒有奏效。 那是因為我在后台運行服務我沒有刪除它所以即使你刪除容器它也會繼續運行它會再次重新啟動它等等..所以這個具體問題的答案是

docker service rm service name or id

如果您關閉/殺死 docker damen,則 Docker 在您的 locahost 中運行,然后 docker stop 和 inside 在 docker 容器中刪除數據,如果您不將數據保存在外部卷中。

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM