Ce face docker compose down
Comanda docker compose down face opusul lui docker compose up: oprește grațios toate containerele proiectului, le șterge și elimină rețeaua virtuală creată pentru proiect.
Dacă vrei doar să oprești temporar containerele fără să le ștergi, folosește docker compose stop (și apoi docker compose start). În practică însă, docker compose down este preferată deoarece nu șterge volumele cu nume în mod implicit — deci datele din baza de date rămân intacte la următorul docker compose up.
Doar dacă adaugi explicit opțiunea -v (--volumes), Compose va șterge și volumele declarate în compose.yaml — util când vrei să resetezi baza de date de dezvoltare de la zero.
Opțiuni și argumente
| Opțiune / Parametru | Descriere |
|---|---|
-v, --volumes |
Șterge și volumele cu nume declarate în secțiunea volumes: a fișierului compose.yaml, precum și volumele anonime. |
--rmi all|local |
Șterge și imaginile folosite de servicii (local șterge doar imaginile fără tag custom, construite local). |
--remove-orphans |
Șterge și containerele rămase de la servicii care nu mai există în compose.yaml. |
-t, --timeout N |
Secunde de așteptare la oprirea containerelor înainte de SIGKILL (implicit 10). |
Exemple
Exemplul 1: Oprirea și curățarea containerelor și a rețelei (păstrând volumele)
Datele din volumul proiect_pgdata nu sunt atinse.
docker compose down
Ieșire în terminal
[+] Running 3/3
✔ Container proiect-api-1 Removed 0.3s
✔ Container proiect-db-1 Removed 0.4s
✔ Network proiect_default Removed 0.1s
Exemplul 2: Resetare completă a mediului local (inclusiv baza de date)
Opțiunea -v șterge și volumul bazei de date, așa că la următorul up scripturile de inițializare vor rula din nou.
docker compose down -v --remove-orphans
Ieșire în terminal
[+] Running 4/4
✔ Container proiect-api-1 Removed 0.2s
✔ Container proiect-db-1 Removed 0.3s
✔ Volume proiect_pgdata Removed 0.0s
✔ Network proiect_default Removed 0.1s
Greșeli frecvente
- Rularea din reflex a comenzii
docker compose down -vpe un server unde baza de date stă într-un volum Compose: șterge toată baza de date. - Așteptarea ca scripturile din
/docker-entrypoint-initdb.d/(PostgreSQL/MySQL) să ruleze din nou după un simpludocker compose downfără-v: acele scripturi rulează doar când volumul de date este complet gol.
Comenzi înrudite
docker compose up: Construiește imaginile, creează rețeaua și volumele și pornește toate serviciile din compose.yaml.compose.yaml: Fișierul declarativ în care descrii serviciile, rețelele și volumele unei aplicații multi-container.docker volume: Creează, listează, inspectează și șterge volume gestionate de Docker pentru date persistente.docker rm: Șterge unul sau mai multe containere (implicit doar pe cele oprite).