guest@portfolio — ~/bloglogin
guest@portfolio ~/blog $
~/blogback

Blog

DevOps, backend va shu saytdagi mashqlar haqida yozuvlar.

8 ta maqola8 tasida mashq borrss
so'nggi maqola8 daqiqa o'qish4 lab1 buyruq mashqi

502 Bad Gateway — nginx orqasida nima buzildi

502 ni nginx'ning o'zi qaytaradi — demak u tirik, buzilgan narsa uning orqasida. error.log'dagi qatorlarni o'qish, upstream'ni nginx konteyneri ichidan tekshirish va 502 ni 504 dan ajratish.

o'qish

# avvalgi maqolalar

8 daqiqa o'qish4 lab1 buyruq mashqi

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 mashqi

Disk 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 mashqi

Exit 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 mashqi

Konteynerda 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 mashqi

Bu 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 mashqi

Backup 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 mashqi

Parol 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.