Conteúdo
Tutorial de docker compose down: pare e remova contêineres, redes e volumes
docker compose down para e remove os contêineres e as redes do projeto Compose.
Sintaxe
docker compose down [opções] [nomes dos serviços...]
| Opção | Descrição |
|---|---|
-v, --volumes | Também remove os volumes nomeados e anônimos declarados em compose.yaml (os dados serão perdidos) |
--rmi local|all | Também remove imagens. local remove apenas as que não têm uma tag personalizada (construídas pelo Compose); all remove todas as usadas pelos serviços |
--remove-orphans | Também remove os contêineres de serviços que não existem mais em compose.yaml |
-t, --timeout segundos | Número de segundos de espera ao parar os contêineres (padrão: 10 segundos) |
--dry-run | Apenas mostra o que seria feito |
Exemplo
Use o projeto de exemplo de docker compose up:
$ docker compose down
[+] down 4/4
✔ Container ref-compose-worker-1 Removed 0.0s
✔ Container ref-compose-web-1 Removed 0.2s
✔ Container ref-compose-cache-1 Removed 0.2s
✔ Network ref-compose_default Removed 0.0s
$ docker volume ls
DRIVER VOLUME NAME
local ref-compose_cache_data
$ docker compose up -d
[+] up 4/4
✔ Network ref-compose_default Created 0.0s
✔ Container ref-compose-worker-1 Started 0.3s
✔ Container ref-compose-cache-1 Started 0.6s
✔ Container ref-compose-web-1 Started 0.8s
$ docker compose down -v -t 1
[+] down 5/5
✔ Container ref-compose-web-1 Removed 0.1s
✔ Container ref-compose-worker-1 Removed 0.0s
✔ Container ref-compose-cache-1 Removed 0.2s
✔ Volume ref-compose_cache_data Removed 0.0s
✔ Network ref-compose_default Removed 0.0s
$ docker volume ls
DRIVER VOLUME NAME
- Sem opções,
downremove os 3 contêineres e a rede, mas preserva o volumeref-compose_cache_data. down -v -t 1também remove o volume, e os dados do Redis desaparecem.-t 1espera no máximo 1 segundo para cada contêiner parar antes de forçar a parada, o que pode acelerar os testes em um ambiente de prática. Em produção, mantenha o valor padrão para dar tempo de o programa encerrar normalmente.
Como escolher entre down, stop e rm
| Comando | Contêiner | Rede | Volume | Uso |
|---|---|---|---|---|
docker compose stop | Para e preserva | Preserva | Preserva | Pausar serviços e retomá-los depois com start |
docker compose rm | Remove os que estão parados | Preserva | Preserva | Raramente usado sozinho |
docker compose down | Para e remove | Remove | Preserva | Encerramento comum, com os dados preservados |
docker compose down -v | Para e remove | Remove | Remove | Começar do zero, por exemplo, reinicializar um banco de dados |
Os scripts de inicialização do banco de dados e as variáveis de senha só têm efeito quando o volume está vazio. Por isso, use
down -vquando quiser reinicializar após alterar as configurações. Veja o motivo em MySQL.
Capítulos relacionados
Exercícios
Exercício: use um único comando para parar e remover os contêineres e as redes do projeto, além das imagens construídas pelo próprio Compose, mas preservar os dados.
Resposta
docker compose down --rmi local
Sem -v, os volumes são preservados.
Perguntas frequentes
docker compose down remove os dados do banco de dados?
Sem opções, **não**. Os volumes são preservados e os dados continuam lá na próxima execução de up. Os volumes declarados em compose.yaml só são removidos com -v.
As imagens continuam lá depois de down?
Sim. Para remover as imagens construídas pelo Compose, use --rmi local; para remover também as imagens baixadas, use --rmi all.
Quero apenas parar temporariamente, sem remover os contêineres. O que faço?
Use docker compose stop e depois docker compose start para retomá-los.
Atualizado 14 de outubro de 2026