Linux Labs

Контейнеры: Docker и compose / Ступень 10 из 11

Лимиты, OOMKilled и пользователь в контейнере

Не запущена Запускается обычно ~20 с
Выйти из урока

Шаг 9 из 9 · итог · 2 мин

Итог

  • --memory ставит потолок памяти всем процессам контейнера; перерос его — OOM killer завершает самый большой процесс сигналом SIGKILL.
  • Код 137 = 128 + 9 значит «убит SIGKILL»; нехватку памяти подтверждают .State.OOMKilled и строка out of memory в journalctl -k.
  • docker stats --no-stream показывает потребление и потолок; без --memory потолок — вся память машины, а --cpus замедляет процесс квотой.
  • UID в контейнере — тот же UID на машине; --user UID:GID уводит процесс от root.
  • Отчёт из начала урока оборвался без ошибки, потому что сборке не хватило 32 МиБ лимита и ядро убило её — дважды, на каждой попытке.
Ubuntu 24.04
Загрузка…