Share feedback
Answers are generated based on the documentation.

docker compose down

DescriptionStop and remove containers, networks
Usagedocker compose down [OPTIONS] [SERVICES]

Description

Stops containers and removes containers, networks, volumes, and images created by up.

By default, the only things removed are:

  • Containers for services defined in the Compose file.
  • Networks defined in the networks section of the Compose file.
  • The default network, if one is used.

Networks and volumes defined as external are never removed.

Anonymous volumes are not removed by default. However, as they don’t have a stable name, they are not automatically mounted by a subsequent up. For data that needs to persist between updates, use explicit paths as bind mounts or named volumes.

Pre-start hook containers

When a pre_start lifecycle hook fails, Compose retains its container for post-mortem inspection instead of removing it immediately. compose down automatically removes these retained hook containers as part of teardown, so they do not accumulate over time.

To list retained hook containers before running down:

$ docker ps -a --filter label=com.docker.compose.hook=pre_start

Options

OptionDefaultDescription
--remove-orphansRemove containers for services not defined in the Compose file
--rmiRemove images used by services. "local" remove only images that don't have a custom tag ("local"|"all")
-t, --timeoutSpecify a shutdown timeout in seconds
-v, --volumesRemove named volumes declared in the "volumes" section of the Compose file and anonymous volumes attached to containers