Рейтинг:0

проверка работоспособности докера на наличие дискового пространства не работает должным образом

флаг in

У меня есть контейнер nginx, который заканчивается полным диском после того, как он работает около 10 дней. Поэтому, если новая версия приложения не выпущена, начинают возникать ошибки, которые выглядят так:

15.01.2022, 22:45:04 [крит] 13#13: *406812 mkdir() "/var/cache/nginx/uwsgi_temp/9/07" не удалось (28: на устройстве не осталось места) при чтении восходящего потока. ..

15.01.2022, 22:44:37 [крит] 13#13: *406820 pwritev() "/var/cache/nginx/client_temp/0000001078" не удалось (28: на устройстве не осталось места)...

Это произошло во время рождественских каникул, поэтому я подумал, что идеальной ситуацией здесь будет проверка работоспособности контейнера, чтобы убедиться, что на диске есть свободное место.Я думал, что добился этого с помощью этой настройки контейнера (но явно не так);

ОТ nginx: 1.21.5-alpine-perl

ЗАПУСТИТЬ обновление apk && \
    apk добавить --no-cache dnsmasq супервизор curl

КОПИРОВАТЬ ./config/supervisord.conf /etc/supervisor/conf.d/supervisord.conf
КОПИРОВАТЬ ./config/nginx.conf /etc/nginx/nginx.conf

HEALTHCHECK --interval=15s --timeout=30s \
    CMD exit $(( $(df / | tail -n1 | awk '{print $5}' | sed 's/\%//') > 95 ? 1 : 0 )) || выход 1

Как проверить наличие свободного места на диске при проверке работоспособности?

Рейтинг:1
флаг in

Войдите в контейнер и проверьте, какой каталог внутри него занимает место, используя дю (моим первым предположением будут файлы журналов). Проверьте, можете ли вы изменить конфигурацию nginx таким образом, чтобы контейнер не заполнял файловую систему. Если нет, смонтируйте внешний том в проблемном каталоге.

флаг in
Это было бы идеально, но эти контейнеры работают в стеках формирования облака как дальние задачи. Насколько я знаю, подключиться к ним невозможно.
Рейтинг:1
флаг us

Вы должны проверить конфигурацию nginx и убедиться, что ограничения размера кэша настроены правильно в соответствии с доступным пространством в контейнере.

флаг in
Конфигурация на самом деле не указывает никаких настроек кеша. Из того, что я вижу, `proxy_cache_path` — это то, что мне нужно определить. Я также прочитал, что `client_body_buffer_size` (в настоящее время не определен) должен соответствовать `client_max_body_size`, который в настоящее время составляет 20 МБ.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.