Встречается на собеседованиях • сегодня

Как работает Docker под капотом

Docker использует несколько ключевых технологий Linux для изоляции процессов:

  1. Namespaces - обеспечивают изоляцию процессов, сети, файловой системы и других ресурсов. Каждый контейнер работает в своем namespace, не видя процессы хоста.

  2. Cgroups (Control Groups) - ограничивают и контролируют использование ресурсов (CPU, память, дисковый I/O) для каждого контейнера.

  1. Union File Systems (OverlayFS, AUFS) - позволяют создавать слоистые файловые системы. Каждый слой в Docker образе - это изменение относительно предыдущего.

  2. Container Runtime (runc) - низкоуровневая библиотека, которая запускает контейнеры, используя вышеуказанные технологии.

Пример запуска процесса в изолированном namespace:

bash
# Создаем новый PID namespace
unshare --pid --fork bash
# В новом namespace виден только этот процесс
ps aux

Docker Engine управляет этими компонентами, предоставляя удобный API для работы с контейнерами.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы