无法停止,杀死或删除Docker容器

时间:2019-06-19 18:35:59

标签: docker

我有一个运行了5周的容器,我既不能停下来也不可以杀死也不能删除它。 docker ps显示了这一点(两个容器实际上都无法删除):

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                NAMES
431a850b384f        f99983306232        "cmd /c 'start /B C:…"   5 weeks ago         Up 5 weeks          0.0.0.0:80->80/tcp   dockercompose18429431017078490850_xxx_1
e31f0b74a8cb        50eef858d93d        "cmd /c 'start /B C:…"   6 weeks ago         Up 6 weeks          0.0.0.0:80->80/tcp   dockercompose15856640072218908353_xxx_1

docker stop e31docker kill e31只是挂了电话,什么也不做。 docker rm e31显示错误:

Error response from daemon: removal of container e31 is already in progress

如果我运行docker inspect e31,我看到容器正在运行,那么它还没有死:

    "Id": "e31f0b74a8cb8225d5104f8de7e1c583ed1852133ad2870015017b09d3df8dfa",
    "Created": "2019-05-08T06:57:24.3143863Z",
    ...
    "State": {
        "Status": "running",
        "Running": true,
        "Paused": false,
        "Restarting": false,
        "OOMKilled": false,
        "Dead": false,
        "Pid": 1324,
        "ExitCode": 0,
        "Error": "",
        "StartedAt": "2019-05-08T06:57:30.3396878Z",
        "FinishedAt": "0001-01-01T00:00:00Z"
    },
  ...

如何摆脱它?

系统信息:

  • 服务器版本:19.03.0-rc2

  • 操作系统:Windows 10 Pro 1903版(操作系统内部版本18362.175)

5 个答案:

答案 0 :(得分:0)

您用它的名字杀死了一个容器,从OP的输出中,正确的命令应该是:

docker kill dockercompose15856640072218908353_xxx_1

有关更多信息,请参见here。试试看,让我知道它是否有效

答案 1 :(得分:0)

请尝试以下两个命令,首先停止容器,然后将其删除(如果它们是使用Dockerfile创建的)。

library(ggplot2)
library(dplyr)

secs5 <- seq(0, max(df1$CheckTime), by = 5)

df1 %>%
  select(Valence, CheckTime, Participant) %>% #interest variables 
  filter(!is.na(CheckTime)) %>% #deleting NAN 
  mutate(Secs5 = secs5[findInterval(CheckTime, secs5)]) %>% 
  group_by(Valence, Secs5) %>% 
  tally() %>% 
  ggplot(aes(x = Secs5, y = n, color = factor(Valence))) + 
  geom_point() + 
  xlim(c(1, 60)) + 
  geom_smooth(method = "lm") + 
  labs(title = element_blank(), x = "Check Time", y = "N", color = "Valence") + 
  scale_color_manual(labels = c("Neutral", "Positive", "Negative"), 
                     values = c("red", "green", "blue"))

对于docker-compose的东西,请使用此命令删除附加的容器

docker stop $(docker ps -a -q)
docker rm $(docker ps -a -q)

答案 2 :(得分:0)

这听起来可能太激进了,但是我刚刚重新安装了Docker。多余的容器不见了。最后。

答案 3 :(得分:0)

我也遇到过几次。我为阻止“悬挂”容器所做的就是-

  1. docker ps以显示容器ID
  2. net stop docker-停止docker引擎(注意所有容器将停止)
  3. 删除c:\programdata\docker\containers中名称以步骤1的ID开头的文件夹
  4. net start docker-启动docker引擎

不幸的是,仍然必须停止并启动docker服务,但是至少我不必重新安装。

答案 4 :(得分:0)

我多次遇到同样的问题。 Error response from daemon: removal of container docker_container_id_goes_here is already in progress

重启你的 docker 并在你的 powershell 或终端中运行以下命令
docker rm docker_container_id_goes_here