docker ps

Wyświetla działające kontenery (z -a także zatrzymane).

docker ps to twoje pierwsze spojrzenie na to, co faktycznie żyje na Dockerze. Bez argumentów pokazuje listę uruchomionych kontenerów wraz z ich ID, obrazem, komendą startową, czasem działania, statusem, mapowaniem portów i nazwą. To odpowiednik ps z systemu, tyle że zamiast procesów ogląda kontenery. Działa tak samo na Linuksie, macOS i Windows, bo rozmawia z demonem Dockera, a nie z systemem hosta.

Składnia i najważniejsze opcje

Podstawowa forma jest banalnie prosta: docker ps [OPTIONS]

  • -a, --all — pokazuje wszystkie kontenery, także zatrzymane i te, które padły z błędem.
  • -q, --quiet — wypisuje tylko ID kontenerów, idealne do podawania innym komendom.
  • -s, --size — dorzuca kolumnę z rozmiarem warstwy zapisywalnej kontenera.
  • -f, --filter — filtruje wynik, np. po statusie, nazwie czy obrazie.
  • -n LICZBA, --last — pokazuje ostatnio utworzone kontenery (niezależnie od stanu).
  • -l, --latest — pokazuje tylko najnowszy utworzony kontener.
  • --no-trunc — nie obcina długich wartości (przydatne przy pełnych ID i komendach).
  • --format — formatuje wynik wg szablonu Go, np. do własnych tabel albo do skryptów.

Przykłady użycia

  • docker ps — szybki rzut oka na wszystko, co aktualnie chodzi.
  • docker ps -a — pełna lista łącznie z zatrzymanymi; tu znajdziesz kontener, który cicho się wyłożył.
  • docker ps -aq — same ID wszystkich kontenerów, świetne do masowych operacji, np. docker rm $(docker ps -aq).
  • docker ps -f "status=exited" — tylko te, które się zatrzymały, czyli kandydaci do sprzątania.
  • docker ps --format "{{.Names}} {{.Status}}" — czytelna lista nazwa plus status, bez reszty szumu.

Częste błędy i pułapki

Najczęstsza pomyłka to dziwienie się, że kontener „zniknął”. Bez -a widzisz wyłącznie działające, więc zatrzymany kontener po prostu się nie pokazuje. Druga rzecz: docker ps domyślnie obcina ID i komendy, więc gdy kopiujesz pełne ID do skryptu, dodaj --no-trunc albo użyj krótkiego ID. Pamiętaj też, że bez działającego demona Dockera dostaniesz Cannot connect to the Docker daemon — to nie wina komendy, tylko tego, że usługa nie wstała (na Linuksie sprawdź systemctl status docker, na macOS/Windows odpal Docker Desktop). I drobiazg: filtry w -f łączą się logicznym AND, więc kilka warunków zawęża, a nie poszerza wynik.

Powiązane komendy: docker container ls (nowsza, równoważna forma), docker stats, docker inspect, docker logs, docker rm.