Blog
DevOps, backend va shu saytdagi mashqlar haqida yozuvlar.
# avvalgi maqolalar
depends_on tayyorlikni kafolatlamaydi
depends_on konteynerlarni faqat tartib bilan ishga tushiradi, baza ulanishga tayyor bo'lishini esa kutmaydi. Poyga loglarda qanday ko'rinishi, to'g'ri healthcheck va ilova ichidagi qayta urinish haqida.
9 daqiqa o'qish3 lab1 buyruq mashqiDisk 100% — tinch boshda ishlatiladigan tekshiruv ro'yxati
No space left on device chiqqanda tasodifiy rm -rf emas, tartib kerak. Bloklar va inode'lar, du bilan qidiruv, o'chirilgan lekin ochiq fayllar, journald, Docker prune xavflari, konteyner loglari va logrotate.
8 daqiqa o'qish4 lab1 buyruq mashqiExit code 137 — konteynerni kim o'ldirdi?
137 — bu 128 + 9, ya'ni jarayon SIGKILL bilan o'ldirilgan. OOM killer, docker kill va to'xtash muddatini docker inspect, yadro logi va docker events orqali ajratish, keyin xotira chegarasi va SIGTERM'ni to'g'ri ushlash.
7 daqiqa o'qish4 lab1 buyruq mashqiKonteynerda root — nega xavfli va qanday yopiladi
Konteyner ichidagi UID 0 host yadrosi uchun ham UID 0. Ilova buzilsa hujumchi nimaga ega bo'ladi va buni compose faylida qadamma-qadam qanday kamaytirish mumkin — user, read_only, cap_drop, no-new-privileges va pids_limit bilan.
10 daqiqa o'qish4 lab1 buyruq mashqiBu saytdagi lab tekshiruvchisi qanday ishlaydi
Lab'da compose faylini yuborsangiz, bir zumda hisobot va terminal chiqishi keladi. Ular qayerdan keladi? Parser cheklovlari, sintaksisning ikki shakli, ma'lumot sifatidagi tekshiruvlar va hech narsani ishga tushirmaydigan simulyatsiya — haqiqiy kod bilan.
10 daqiqa o'qish4 lab1 buyruq mashqiBackup bor, tiklash-chi? pg_dump va pg_restore'ni sinash
Har kecha pg_dump ishlaydi, fayllar yig'ilib boradi — lekin ulardan birortasi tiklab ko'rilganmi? Dump formatlari, compose konteyneridan dump olish, rollar va har bir nusxani toza konteynerga tiklab isbotlash haqida.
9 daqiqa o'qish4 lab1 buyruq mashqiParol git tarixida qoladi — .env, env_file va compose secrets
Fayldan o'chirilgan parol git tarixida qoladi. Compose sirlarni qayerdan oladi, ular yana qayerda ko'rinib qoladi, sizib chiqqan sirni qanday almashtirish va keyingisini commitdan oldin qanday ushlash haqida.