- portlar
- chiqarilmagan — faqat ichki tarmoq
- healthcheck
- yo'q
- restart
- no (standart)
- user
- root (standart)
- tarmoq
- default
~/labs / api-init-va-graceback
Ilova xizmatlari9/14
SIGTERM ilovaga yetib bormayapti
o'rta
Bitta buyruqli sh -c "python app.py" ni shell o'zi exec qiladi — ilova PID 1 bo'ladi. Lekin pipeline (python app.py | tee ...) bilan shell ikkala jarayonni kutishi kerak, shuning uchun u PID 1 bo'lib qoladi va SIGTERM'ni ilovaga uzatmaydi: ilova signalni ko'rmaydi, 10 soniyadan keyin SIGKILL bilan o'ldiriladi. Docker'da loglar uchun tee kerak emas — stdout'ning o'zi docker logs ga boradi.
- Shell o'ramini olib tashlang:
command: python app.py. init: true— bola jarayonlar uchun.stop_grace_period: 30s.
…
docker-compose.yml
12345
services: api: image: python:3.12-alpine command: sh -c "python app.py 2>&1 | tee -a /tmp/app.log"
✓ YAML to'g'ri · 1 servis
Tab ichkariga · Shift+Tab tashqariga⌘/Ctrl+Enter tekshirishEsc maydondan chiqish
1 servis · 0 tarmoq · 0 volume · tuzilma toza
✓ Compose e'tiroz bildiradigan narsa topilmadi. Vazifa talablari esa serverda, ishga tushirganda tekshiriladi.
Servislar 1
Ishga tushish tartibi
- 1apihech kimni kutmaydi
learner@lab: ~/app
learner@lab:~/app$
help — buyruqlar ro'yxati. Yuqori/pastki strelkalar — tarix, Tab — to'ldirish (bo'sh qatorda keyingi elementga o'tadi), Ctrl+C — to'xtatish.
hisobot shu yerda chiqadi
tekshirish uchun avval
tekshirish uchun avval