Вопрос проверяет понимание различий между контейнеризацией и оркестрацией контейнеров.
Docker — это инструмент для создания и запуска контейнеров.
Он отвечает за упаковку приложения и его зависимостей.
Kubernetes — это система оркестрации контейнеров.
Он управляет запуском, масштабированием и отказоустойчивостью множества контейнеров.
Docker и Kubernetes решают разные задачи и часто используются вместе.
Docker отвечает за контейнеризацию:
Упаковка приложения и зависимостей в образ
Запуск контейнера на конкретной машине
Изоляция процессов и окружения
Пример:
docker build -t app .
docker run app
Docker “знает”, как запустить контейнер, но не знает, что делать, если контейнер упал.
Kubernetes отвечает за оркестрацию:
Запуск контейнеров на кластере машин
Перезапуск при падении
Масштабирование
Балансировку нагрузки
Rolling update без простоя
Он работает не с образами напрямую, а с Pod, Deployment, Service и другими объектами.
Docker → как запустить контейнер
Kubernetes → как управлять сотнями контейнеров в продакшене
Docker — собирает образ
Образ загружается в registry
Kubernetes — запускает и контролирует контейнеры из этого образа
Docker — базовый инструмент контейнеризации, Kubernetes — система управления контейнерами в масштабах продакшена.