码头工人

描述

取出一个或多个容器

用法

$ docker rm [OPTIONS] CONTAINER [CONTAINER...]

有关此命令的示例用法,请参阅下面的示例部分

选项

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

例子

取出容器

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

$ docker rm /redis

/redis

这将删除 默认桥接网络上/webapp/redis容器之间的基础链接,并删除容器之间的基础链接,从而删除两个容器之间的所有网络通信。当--link与用户指定的网络一起使用时,此方法不适用。

$ docker rm --link /webapp/redis

/webapp/redis

强制删除正在运行的容器

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

$ docker rm --force redis

redis

链接下引用的容器内部的主进程redis将接收 SIGKILL,然后将容器删除。

取出所有停止的容器

使用该docker container prune命令删除所有停止的容器,或者参考该docker system prune 命令删除除其他Docker资源(例如(未使用的)映像和网络)之外的未使用的容器。

或者,您可以docker ps-q/--quiet选项与/选项一起使用以生成要删除的容器ID的列表,并将该列表用作docker rm命令的参数。

组合命令可能更灵活,但移植性却更差,因为它取决于外壳程序提供的功能,并且确切的语法可能会有所不同,具体取决于所使用的外壳程序。要在Windows上使用此方法,请考虑使用PowerShell或Bash。

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

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

或者,使用xargsLinux实用程序;

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

删除容器及其卷

$ docker rm -v redis
redis

此命令将删除容器以及与其关联的所有卷。请注意,如果使用名称指定了卷,则不会将其删除。

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

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

$ docker rm -v hello

在此示例中,的体积/foo保持不变,但是的体积 /bar被移除。对于用继承的卷,也具有相同的行为 --volumes-from

上级命令

命令 描述
码头工人 Docker CLI的基本命令。