tgoop.com/devsecops_weekly/1204
Last Update:
Устройство файловой системы контейнеров
Всем привет!
«Как каждый контейнер получает свою собственную файловую систему?» - с этого вопроса началось небольшое исследование, описанное в статье.
Сперва Автор создает простой контейнер на базе Alpine и помещает внутрь него файл hello_there.txt
.
Да, этот самый файл можно найти и в операционной системе хоста по пути /var/lib/docker…
А еще там есть разные папки - diff
, merged
и именно этому посвящена остальная часть статьи.
Эти данные необходимы для управления overlayfs, которую использует Docker. Грубо говоря, есть несколько «директорий» (не совсем так, но для концепта подойдет):
🍭 Lower, доступную только для чтения. Именно там хранится то, что было в изначальном образе
🍭 Upper (она же Diff), в которую можно записывать. Тот самый «дополнительный слой образа», который создается при старте контейнера
🍭 Merged. Соединение Upper и Lower
После пояснения основных концептов на крайне наглядных примерах (схемы с комментариями) Автор создает файловую систему контейнера, имитируя деятельность Docker.
В итоге имеем отличную статью, которая позволяет лучше разобраться в том, как именно устроены и работают контейнеры. Рекомендуем!
BY DevSecOps Talks

Share with your friend now:
tgoop.com/devsecops_weekly/1204