CodeGym /Kursy /Docker SELF /Sprawdzanie stanu kontenerów

Sprawdzanie stanu kontenerów

Docker SELF
Poziom 11 , Lekcja 2
Dostępny

3.1 Podstawy polecenia docker ps

Polecenie docker ps — jedno z najbardziej przydatnych w arsenale Docker. Wyświetla listę działających kontenerów i dostarcza informacji o nich. W tym wykładzie szczegółowo omówimy, jak używać docker ps, aby sprawdzić stan twoich kontenerów oraz jakie opcje są dostępne do bardziej szczegółowego wyświetlania informacji.

Domyślnie polecenie docker ps wyświetla listę tylko tych kontenerów, które są aktualnie uruchomione.

Składnia

Terminal

docker ps [OPTIONS]

Gdzie:

  • OPTIONS: dodatkowe parametry do filtrowania i formatowania wyświetlania.

Przykład podstawowego użycia

Terminal


docker ps 

To podstawowe wywołanie polecenia docker ps wyświetli listę wszystkich uruchomionych kontenerów. Wyjście będzie zawierać następujące pola:

  • CONTAINER ID: unikalny identyfikator kontenera.
  • IMAGE: obraz, z którego został utworzony kontener.
  • COMMAND: polecenie wykonywane w kontenerze.
  • CREATED: czas, jaki minął od utworzenia kontenera.
  • STATUS: aktualny stan kontenera (np. Up 5 minutes).
  • PORTS: przekierowane porty.
  • NAMES: nazwa kontenera.

Lista wszystkich kontenerów

Aby wyświetlić wszystkie kontenery, w tym zatrzymane, użyj opcji -a:

Terminal


docker ps -a 

To polecenie wyświetli listę wszystkich kontenerów, które kiedykolwiek były uruchomione, z podaniem ich aktualnego stanu (uruchomiony, zatrzymany itd.).

3.2 Filtrowanie wyników

Docker daje możliwość filtrowania wyników komendy docker ps, aby wyświetlić tylko te kontenery, które spełniają określone kryteria.

1. Filtrowanie według statusu

Na przykład, aby wyświetlić tylko zatrzymane kontenery:

Terminal


docker ps -f "status=exited" 

2. Filtrowanie według nazwy

Aby wyświetlić kontenery o określonej nazwie lub jej części:

Terminal


docker ps -f "name=my_container"

3. Filtrowanie według obrazu

Aby wyświetlić kontenery stworzone z konkretnego obrazu:

Terminal

docker ps -f "ancestor=nginx"

3.3 Formatowanie wyjścia

Możesz dostosować wyjście komendy docker ps, aby było bardziej czytelne lub zawierało tylko interesujące Cię pola. Do tego używany jest parametr --format.

Przykład formatowania

Terminal


docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Status}}"

Ten przykład wyświetla tabelę z identyfikatorami kontenerów, ich nazwami i statusem.

Dostępne kolumny tabeli

  • {{.ID}}: identyfikator kontenera.
  • {{.Image}}: obraz kontenera.
  • {{.Command}}: komenda wykonywana w kontenerze.
  • {{.CreatedAt}}: czas utworzenia kontenera.
  • {{.RunningFor}}: czas działania kontenera.
  • {{.Status}}: aktualny stan kontenera.
  • {{.Ports}}: przekierowane porty.
  • {{.Names}}: nazwa kontenera.

Przykłady użycia

Przykład 1: wyświetlanie tylko identyfikatorów kontenerów

Ten przykład pokaże tylko identyfikatory uruchomionych kontenerów. Przydatne do użycia w skryptach.

Terminal


docker ps -q

Przykład 2: wyświetlanie kontenerów uruchomionych w ciągu ostatnich 24 godzin

Terminal


docker ps --filter "since=24h" 

Przykład 3: wyświetlanie kontenerów z określonym statusem i formatowanie wyjścia

Ten przykład wyświetli tabelę z nazwami kontenerów, ich statusem i przekierowanymi portami dla wszystkich uruchomionych kontenerów.

Terminal


docker ps -f "status=running" --format "table {{.Names}}\t{{.Status}}\t{{.Ports}}" 

3.4 Praktyczne scenariusze

1. Monitorowanie działających kontenerów

Kiedy masz uruchomionych kilka kontenerów, polecenie docker ps pozwala Ci szybko sprawdzić ich aktualny stan i upewnić się, że wszystko działa poprawnie.

Terminal


docker ps 

2. Szukanie i usuwanie zatrzymanych kontenerów

Po zakończeniu działania kontenery pozostają w systemie, dopóki ich nie usuniesz. Możesz użyć docker ps -a, aby znaleźć wszystkie zatrzymane kontenery, a następnie je usunąć.

Terminal

docker ps -a -f "status=exited" 
docker rm $(docker ps -a -f "status=exited" -q)
    

3. Automatyzacja zadań

Używanie polecenia docker ps w skryptach pozwala zautomatyzować różne zadania administracyjne dotyczące kontenerów. Na przykład możesz tworzyć raporty o stanie kontenerów lub automatycznie ponownie uruchamiać kontenery, jeśli zostały zatrzymane.

Terminal

if [ $(docker ps -q -f "name=my_container") ]; then
  echo "Kontener działa"
else
  docker start my_container
fi
    

Ważne! Ten "kod" został napisany w terminalu Linux. Możliwe, że będziesz musiał się nim trochę zainteresować.

3
Zadanie
Docker SELF, poziom 11, lekcja 2
Niedostępne
Wyświetlanie wszystkich kontenerów, w tym zatrzymanych
Wyświetlanie wszystkich kontenerów, w tym zatrzymanych
3
Zadanie
Docker SELF, poziom 11, lekcja 2
Niedostępne
Filtrowanie według statusu kontenerów
Filtrowanie według statusu kontenerów
3
Zadanie
Docker SELF, poziom 11, lekcja 2
Niedostępne
Formatowanie wyświetlania listy kontenerów
Formatowanie wyświetlania listy kontenerów
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION