试图停止来自 this image 的容器使用上述任一命令都会导致 docker 无限期等待。仍可在 docker ps
中观察到容器输出。
抱歉,这是一个新手问题,但是如何正确停止容器?
此容器首先根据 hub.docker.com 上的说明运行,按 Ctrl+C 停止,然后按 docker start <containter-name>
再次启动.启动后,它从未按预期工作。
最佳答案
你的测试对我有用:
→ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
853e36b8a952 jleight/opentsdb "/usr/bin/supervisord" 9 minutes ago Up 9 minutes 0.0.0.0:4242->4242/tcp fervent_hypatia
→ docker stop fervent_hypatia
fervent_hypatia
→ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
花了一点时间,但我认为这是因为 Docker 镜像正在使用主管进程,所以 SIGTERM(这是 docker stop 首先发送的)不会终止容器,而是 SIGKILL,这是默认发送的应该在 10 秒后(我的等待时间约为 10 秒)。
以防万一您的默认值可能由于某种原因而被弄乱,请尝试明确指示超时:
docker stop --time=2 <container-name>
关于docker - "docker stop"、 "docker kill"和 "docker -f rm"都不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35688737/