docker container rm

删除一个或多个容器。

用法

docker container rm [OPTIONS] CONTAINER [CONTAINER...]

别名

别名是较长命令的简短或易于记忆的替代形式。

  • docker container remove

  • docker rm

选项

选项
描述

-f, --force

强制删除正在运行的容器(发送 SIGKILL

-l, --link

删除指定的链接

-v, --volumes

删除与容器关联的匿名卷

示例

删除一个容器

$ docker rm /redis
/redis

该命令会删除 /webapp/redis 容器之间的链接,从而移除两者在默认 bridge 网络上的网络通信能力。 注意:当 --link 与用户自定义网络一起使用时,此操作无效。

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

该命令会强制删除名为 redis 的运行中容器。 容器内的主进程将首先收到 SIGKILL 信号,然后容器会被移除。

你可以使用 docker container prune 命令删除所有已停止的容器, 或使用 docker system prune 命令同时清理未使用的容器、镜像、网络等 Docker 资源。

你也可以结合 docker ps-q(或 --quiet)选项生成容器 ID 列表,并将其作为参数传递给 docker rm 命令。

注意:组合命令的灵活性更高,但可移植性较差,因为其依赖于 shell 提供的功能,且具体语法可能因所用 shell 而异。在 Windows 上建议使用 PowerShell 或 Bash。

以下示例使用 docker ps -q 打印所有已退出容器(--filter status=exited)的 ID,并通过命令替换将其传递给 docker rm

或者,使用 Linux 的 xargs 工具:

删除容器及其关联的卷(-v, --volumes

该命令会删除容器及与其关联的所有匿名卷。

注意:如果卷是通过名称显式指定的(命名卷),则不会被删除。

例如:

在此示例中:

  • 挂载到 /foo 的命名卷 awesome 不会被删除

  • 挂载到 /bar 的匿名卷 会被删除

同样的行为也适用于通过 --volumes-from 继承的卷。

最后更新于

这有帮助吗?