CodeGym /Kurslar /Docker SELF /Konteynerlərin vəziyyətinə nəzarət

Konteynerlərin vəziyyətinə nəzarət

Docker SELF
Səviyyə , Dərs
Mövcuddur

3.1 docker ps komandasının əsasları

docker ps komandasını Docker arsenalında ən faydalı komandalardan biridir. Bu, hazırda işləyən konteynerlərin siyahısını göstərmək və onlar haqqında məlumatı təqdim etməyə imkan verir. Bu mühazirədə biz docker ps-dən konteynerlərin vəziyyətini yoxlamaq və daha ətraflı məlumatın çıxarılması üçün hansı parametrlərin mövcud olduğunu necə istifadə edəcəyimizi ətraflı təsvir edəcəyik.

Varsayılan olaraq, docker ps komandası yalnız hal-hazırda işləyən konteynerlərin siyahısını çıxarır.

Sintaksis

Terminal

docker ps [OPTIONS]

Burada:

  • <сcode>OPTIONS: Çıxarışın filtrasiya və formatlanması üçün əlavə parametrlər.

Əsas istifadə nümunəsi

Terminal


docker ps 

docker ps komandasının bu əsas çağırışı bütün işləyən konteynerlərin siyahısını çıxaracaq. Çıxarış aşağıdakı sahələri özündə birləşdirəcək:

  • CONTAINER ID: Konteynerin unikal identifikatoru.
  • IMAGE: Konteynerin yaradıldığı image.
  • COMMAND: Konteynerdə icra olunan komanda.
  • CREATED: Konteynerin yaradılmasından keçən vaxt.
  • STATUS: Konteynerin cari vəziyyəti (məsələn, Up 5 minutes).
  • PORTS: Yönləndirilmiş portlar.
  • NAMES: Konteynerin adı.

Bütün konteynerlərin siyahısı

Bütün konteynerləri, dayanmış olanlar da daxil olmaqla, göstərmək üçün -a opsiyasından istifadə edin:

Terminal


docker ps -a 

Bu komanda hal-hazırda işləyən, dayanmış və s. vəziyyətləri ilə birlikdə tarixdə işləyən bütün konteynerlərin siyahısını çıxaracaq.

3.2 Çıxışın filtrasiya edilməsi

Docker, docker ps komandasının çıxışını filtrasiya etməyə imkan verir ki, yalnız müəyyən kriteriyalara cavab verən konteynerlər görünsün.

1. Statusa görə filtrasiya

Məsələn, yalnız dayandırılmış konteynerləri göstərmək üçün:

Terminal


docker ps -f "status=exited" 

2. Ada görə filtrasiya

Müəyyən bir ada və ya onun bir hissəsinə malik konteynerləri göstərmək üçün:

Terminal


docker ps -f "name=my_container"

3. İmage-ə görə filtrasiya

Müəyyən bir image-dən yaradılmış konteynerləri göstərmək üçün:

Terminal

docker ps -f "ancestor=nginx"

3.3 Çıxışın formatlaşdırılması

docker ps komandasının çıxışını daha oxunaqlı etmək və ya yalnız sizə lazım olan sütunları daxil etmək üçün onu tənzimləyə bilərsiniz. Bunun üçün --format parametri istifadə edilir.

Formatlaşdırma nümunəsi

Terminal


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

Bu nümunə konteynerin identifikatorunu, adını və vəziyyətini olan cədvəli göstərəcək.

Cədvəl üçün mövcud sütunlar

  • {{.ID}}: Konteynerin identifikatoru.
  • {{.Image}}: Konteyner imici.
  • {{.Command}}: Konteynerdə icra olunan komanda.
  • {{.CreatedAt}}: Konteynerin yaranma vaxtı.
  • {{.RunningFor}}: Konteynerin işləmə müddəti.
  • {{.Status}}: Konteynerin cari vəziyyəti.
  • {{.Ports}}: Yönləndirilmiş portlar.
  • {{.Names}}: Konteyner adı.

İstifadə nümunələri

Nümunə 1: Yalnız konteynerlərin identifikatorlarını göstərmək

Bu nümunə yalnız işləyən konteynerlərin identifikatorlarını göstərəcək. Skriptlərdə istifadə üçün faydalıdır.

Terminal


docker ps -q

Nümunə 2: Son 24 saat ərzində işləyən konteynerləri göstərmək

Terminal


docker ps --filter "since=24h" 

Nümunə 3: Müəyyən vəziyyətdə olan konteynerləri göstərmək və çıxışı formatlaşdırmaq

Bu nümunə bütün işləyən konteynerlərin adlarını, vəziyyətlərini və yönləndirilmiş portları olan cədvəli göstərəcək.

Terminal


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

3.4 Praktiki ssenarilər

1. İşləyən konteynerlərin monitorinqi

Birdən çox konteyner çalışdığı zaman, docker ps komandası vasitəsilə onların cari vəziyyətini tez bir zamanda yoxlaya və hər şeyin düzgün işlədiyinə əmin ola bilərsiniz.

Terminal


docker ps 

2. Dayanmış konteynerlərin tapılması və silinməsi

Konteynerlər fəaliyyətini dayandırdıqdan sonra, siz onları silənə qədər sistemdə qalırlar. Bütün dayanmış konteynerləri tapmaq üçün docker ps -a istifadə edə bilərsiniz və ardından onları silə bilərsiniz.

Terminal

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

3. Tapşırıqların avtomatlaşdırılması

docker ps komandasının skriptlərdə istifadə olunması konteynerlərin idarə olunmasında müxtəlif tapşırıqları avtomatlaşdırmağa imkan verir. Məsələn, konteynerlərin vəziyyəti barədə hesabatlar yarada və ya dayandırılmış konteynerləri avtomatik olaraq yenidən başlada bilərsiniz.

Terminal

if [ $(docker ps -q -f "name=my_container") ]; then
  echo "Konteyner işləyir"
else
  docker start my_container
fi
    

Vacibdir! Bu «kod» Linux terminalında yazılıb. Fikrimcə, siz də onu öyrənməli olacaqsınız.

Şərhlər
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION