Container Debugging
Konteynerni nosozliklardan tozalash
Konteyner ishlamay qolganda, uni to'g'ridan-to'g'ri "ko'rish" imkoningiz yo'q — u boshqa, izolyatsiya qilingan "dunyo"da ishlaydi. Bu — devor ortidagi xonada nima bo'layotganini bilmoqchi bo'lishga o'xshaydi: sizga eshik (buyruqlar) kerak, deraza orqali ko'rish uchun.
$ docker logs mening-konteynerim # konteynerning stdout/stderr chiqishini ko'rish
$ docker logs -f mening-konteynerim # jonli, real vaqtda kuzatish (-f = "follow")
$ docker exec -it mening-konteynerim sh # konteyner ICHIGA "kirib", terminal ochish
$ docker inspect mening-konteynerim # konteyner haqida BATAFSIL ma'lumot (JSON)docker logs — "Logging with slog" kursida ko'rgan barcha fmt.Println/slog.Info chiqishlarini ko'rish uchun eng birinchi vosita: konteyner ichidagi dastur nima chop etayotgan bo'lsa, hammasi shu yerda ko'rinadi. -f bayrog'i bilan uni jonli kuzatish mumkin — xuddi terminalda dasturni to'g'ridan-to'g'ri ishga tushirib, chiqishini kuzatgandek.
docker exec -it <konteyner> sh — bu eng kuchli vosita: u sizni ishlab turgan konteyner ichiga olib kiradi, xuddi o'sha "kompyuter"ga masofadan ulanib, terminal ochgandek. Shu yerdan siz fayllarni ko'rishingiz, muhit o'zgaruvchilarini tekshirishingiz, hatto qo'lda buyruq bajarishingiz mumkin — bu "nega mening dasturim bu yerda kutilganidek ishlamayapti?" degan savolga javob topishning eng samarali usuli.
docker inspect esa konteyner haqidagi barcha texnik ma'lumotni (IP-manzili, ulangan volume'lari, muhit o'zgaruvchilari, holati) katta JSON ko'rinishida beradi — bu "aynan nima sozlangan edi?" degan savolga chuqur javob kerak bo'lganda ishlatiladi.
Key Takeaway
Key Takeaway:
docker logs chiqishni ko'rish uchun, docker exec -it ... sh konteyner ichiga kirib tekshirish uchun, docker inspect esa to'liq texnik tafsilotlar uchun ishlatiladi — bularsiz konteyner ichida nima bo'layotganini bilib bo'lmaydi.
NEXT UP
Production Dockerfile: Security