docker rm

Estimated reading time: 2 minutes

Description

Remove one or more containers

Usage

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

Options

Name, shorthand Default Description
--force , -f Force the removal of a running container (uses SIGKILL)
--link , -l Remove the specified link
--volumes , -v Remove the volumes associated with the container

Parent command

Command Description
docker The base command for the Docker CLI.

Examples

Remove a container

This will remove the container referenced under the link /redis.

$ docker rm /redis

/redis

This will remove the underlying link between /webapp and the /redis containers on the default bridge network, removing all network communication between the two containers. This does not apply when --link is used with user-specified networks.

$ docker rm --link /webapp/redis

/webapp/redis

Force-remove a running container

This command will force-remove a running container.

$ docker rm --force redis

redis

The main process inside the container referenced under the link redis will receive SIGKILL, then the container will be removed.

Remove all stopped containers

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

This command will delete all stopped containers. The command docker ps -a -q will return all existing container IDs and pass them to the rm command which will delete them. Any running containers will not be deleted.

Remove a container and its volumes

$ docker rm -v redis
redis

This command will remove the container and any volumes associated with it. Note that if a volume was specified with a name, it will not be removed.

Remove a container and selectively remove volumes

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

In this example, the volume for /foo will remain intact, but the volume for /bar will be removed. The same behavior holds for volumes inherited with --volumes-from.