- portlar
- 0.0.0.0:8000 → 8000/tcp
- healthcheck
- yo'q
- restart
- no (standart)
- user
- root (standart)
- tarmoq
- default
~/labs / resurs-va-loglarback
Asoslar8/15
Bitta konteyner butun serverni yiqitmasin
qiyin
Tunda server javob bermay qoldi. Sabab: worker xotirani yeb qo'ygan, api esa log bilan diskni to'ldirgan. Ikkalasi ham konfiguratsiyada oldini olish mumkin bo'lgan narsa.
- Uchala servisga ham xotira chegarasi qo'ying (
deploy.resources.limits.memory). - Uchala servisning ham logi cheklansin (
logging.options.max-size). - Uchalasi ham server qayta yuklanganda ko'tarilsin (
restart: unless-stopped). dbuchun healthcheck bo'lsin vaapiuni tayyor bo'lgunicha kutsin.api8080 portda ochilsin (ichkarida 8000).
…
docker-compose.yml
1234567891011121314
services: api: image: python:3.12-alpine ports: - "8000:8000" depends_on: - db worker: image: python:3.12-alpine db: image: postgres:16-alpine environment: POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
✓ YAML to'g'ri · 3 servis
Tab ichkariga · Shift+Tab tashqariga⌘/Ctrl+Enter tekshirishEsc maydondan chiqish
3 servis · 0 tarmoq · 0 volume · tuzilma toza
✓ Compose e'tiroz bildiradigan narsa topilmadi. Vazifa talablari esa serverda, ishga tushirganda tekshiriladi.
Servislar 3
- portlar
- chiqarilmagan — faqat ichki tarmoq
- healthcheck
- yo'q
- restart
- no (standart)
- user
- root (standart)
- tarmoq
- default
- portlar
- chiqarilmagan — faqat ichki tarmoq
- healthcheck
- yo'q
- restart
- no (standart)
- user
- root (standart)
- tarmoq
- default
Ishga tushish tartibi
- 1workerhech kimni kutmaydidbhech kimni kutmaydi
- 2apidb ishga tushishini kutadi (tayyorligini emas)
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