【问题标题】:How to remove old Docker containers如何删除旧的 Docker 容器
【发布时间】:2013-06-18 16:14:27
【问题描述】:

这个问题与Should I be concerned about excess, non-running, Docker containers?有关。

我想知道如何移除旧容器。 docker rm 3e552code34a 可以让你删除一个,但我已经有很多了。 docker rm --help 没有提供选择选项(如全部或按图像名称)。

也许有一个存放这些容器的目录,我可以轻松地手动删除它们?

【问题讨论】:

  • 您还应该考虑清理孤立的 docker 卷。 我经常发现它们比旧容器和旧图像消耗更多的空间。删除孤立 docker 卷的好脚本可在以下位置获得:github.com/chadoe/docker-cleanup-volumes。
  • 您也可以使用docker run 和--rm 标志,这将使容器短暂,在运行后删除所有容器文件。
  • 使用 docker 1.13(2016 年第四季度),您还可以考虑使用新的 docker system prune 命令。见my answer below。
  • 使用docker管理工具Portainer 我们可以使用这个工具来管理all the old containers, non using volumes and images它是一个简单的docker管理UIPlease refer my update below on how to deploy the application

标签: docker


【解决方案1】:

在 windows (powershell) 上,您可以执行以下操作:

  1. $containers = docker ps -a -q
  2. foreach ($container in $containers) {docker rm $container -f }

【讨论】:

    【解决方案2】:

    我想添加这个简单的答案,因为我没有看到它,而且问题特别是“旧”而不是“全部”。

    sudo docker container prune --filter "until=24h"

    调整 24 小时为您要删除旧容器的任何时间跨度。

    【讨论】:

      【解决方案3】:

      要删除所有的 docker,: docker system prune -a

      【讨论】:

        【解决方案4】:

        使用下面的命令知道容器ID

        docker ps
        

        然后使用下面的命令来停止它。

        docker kill <container-id>
        

        【讨论】:

          【解决方案5】:

          查看所有现有图片:

          docker images -a
          

          查看所有现有容器:

          docker ps -a
          

          删除单张图片:

          docker images -a
          docker rmi <IMAGE_ID>
          

          停止单个容器:

          docker ps -a
          docker stop <CONTAINER_ID>
          

          停止多个容器:

          docker ps -a
          docker stop <CONTAINER_ID1> <CONTAINER_ID2>
          

          删除单个容器:

          docker ps -a
          docker rm <CONTAINER_ID>
          

          删除多张图片:

          docker images -a
          docker rmi <IMAGE_ID1> <IMAGE_ID2>
          

          删除多个停止的容器:

          docker ps -a
          docker rm <CONTAINER_ID1> <CONTAINER_ID2>
          

          在一个命令中同时删除容器和图像:

          docker rm $(docker ps -a -q) && docker rmi -f $(docker images -a -q)
          

          修剪所有容器:

          docker container prune
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2020-02-17
            • 2017-08-30
            • 2020-08-13
            • 1970-01-01
            • 2021-11-13
            • 1970-01-01
            • 2023-01-05
            • 2017-11-20
            相关资源
            最近更新 更多