Docker 容器 rm

描述删除一个或多个容器
用法docker container rm [OPTIONS] CONTAINER [CONTAINER...]
别名
docker container remove docker rm

描述

删除一个或多个容器

选项

选择违约描述
-f, --force强制删除正在运行的容器(使用 SIGKILL)
-l, --link删除指定的链接
-v, --volumes删除与容器关联的匿名卷

例子

删除容器

这将删除链接下引用的容器/redis.

$ docker rm /redis

/redis

这消除了/webapp/redis默认桥接网络上的容器,删除所有网络通信 在两个容器之间。这在以下情况下不适用--link用于 用户指定的网络。

$ docker rm --link /webapp/redis

/webapp/redis

强制删除正在运行的容器 (--force)

此命令强制删除正在运行的容器。

$ docker rm --force redis

redis

链接下引用的容器内的主进程redis将收到SIGKILL,则容器将被删除。

删除所有已停止的容器

使用docker container prune命令删除所有 stopped containers 的 Stopped 容器,或参阅docker system prune命令删除未使用的容器以及其他 Docker 资源,例如 作为 (未使用的) 镜像和网络。

或者,您可以使用docker ps使用-q / --quiet选项设置为 生成要删除的容器 ID 列表,并将该列表用作 这docker rm命令。

组合命令可能更灵活,但可移植性较差,因为它取决于 on shell 提供的功能,确切的语法可能因 使用什么 shell。要在 Windows 上使用此方法,请考虑使用 PowerShell 或 Bash。

下面的示例使用docker ps -q打印所有容器的 ID,该容器 已退出 (--filter status=exited),并使用 这docker rm命令:

$ docker rm $(docker ps --filter status=exited -q)

或者,使用xargsLinux 实用程序:

$ docker ps --filter status=exited -q | xargs docker rm

删除容器及其卷 (-v, --volumes)

$ docker rm --volumes redis
redis

此命令将删除容器以及与其关联的任何卷。 请注意,如果为卷指定了名称,则不会删除该卷。

删除容器并有选择地删除卷

$ docker create -v awesome:/foo -v /bar --name hello redis
hello

$ docker rm -v hello

在此示例中,/foo保持不变,但/bar已删除。同样的行为也适用于使用--volumes-from.