Linux Labs

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

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

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

Шаг 3 из 9 · на машине · 4 мин

Сколько берёт контейнер

Потолок памяти виден и у работающего контейнера. На машине три контейнера, созданных с разными ключами.

Упражнение · посмотреть

Сравни три контейнера

Посмотри список работающих контейнеров, а потом один снимок их потребления в docker stats.

Сначала предположи

cron создан без ключа --memory. Что docker stats покажет у него в столбце LIMIT?

Теперь начни упражнение, выполни команду и сверь прогноз с выводом.

Войти и начать Машина доступна после входа

docker stats — таблица потребления по каждому работающему контейнеру: доля процессора CPU %, память MEM USAGE и потолок LIMIT. Без ключей она обновляется на экране, пока не нажмёшь Ctrl+C; --no-stream печатает один снимок.

У api потолок — 64MiB из его --memory 64m. У cron лимита нет, и в LIMIT стоит 458.2MiB — вся память машины. Такой контейнер может занять память, которая нужна остальным службам. Когда она кончится на всей машине, OOM killer выберет жертву среди всех процессов — это может быть база данных или sshd.

Ubuntu 24.04
Загрузка…