docker - "docker stop"、 "docker kill"和 "docker -f rm"都不起作用

标签 docker containers dockerhub

试图停止来自 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/

相关文章:

docker - 无法连接到docker swarm服务任务

linux - cgroups 和命名空间的区别

angular - 在多容器docker-compose设置中,我应该添加什么作为api地址?

bash - 通过 docker-compose 拉取 ssh-client 容器

html - 包装器不包装

c++ - 返回在 C++ 中没有 back() 方法的容器的最后一个元素?

mysql - 远程访问在docker容器上运行的mysql服务器

docker - 私有(private) docker 注册表中的自动最新标签

docker - 将 docker 镜像克隆到 dockerhub 账户

docker - 镜像注册表在 docker 中如何工作?